How to display the output as table shown below?
1 次查看(过去 30 天)
显示 更早的评论
z(:,:,1) =
0.4794 0.8776 0
0.0000 1.0000 0
-0.4794 0.8776 0
z(:,:,2) =
0.4794 0.8776 1.0000
0.0000 1.0000 1.0000
-0.4794 0.8776 1.0000
z(:,:,3) =
0.4794 0.8776 2.0000
0.0000 1.0000 2.0000
-0.4794 0.8776 2.0000
How can I display output as follows?
z=
Nodenumber(1) 0.4794 0.8776 0
Nodenumber(2) 0.0000 1.0000 0
Nodenumber(3) -0.4794 0.8776 0
Nodenumber(4) 0.4794 0.8776 1.0000
Nodenumber(5) 0.0000 1.0000 1.0000
Nodenumber(6) -0.4794 0.8776 1.0000
Nodenumber(7) 0.4794 0.8776 2.0000
Nodenumber(8) 0.0000 1.0000 2.0000
Nodenumber(9) -0.4794 0.8776 2.0000
1 个评论
per isakson
2021-8-24
Tags in this forum shall not have a leading "#" .
"display output as follows" By typing "z" in the command window you cannot get this output. There will be a lot of brackets.
回答(2 个)
Wan Ji
2021-8-24
You can use a table to achieve the output
Node = reshape(permute(z,[1,3,2]),numel(z)/size(z,2), size(z,2));
Nodenumber = char (num2str((1:size(a,1))'));
z = table(Nodenumber,Node)
0 个评论
Kevin Holly
2021-8-24
z(:,:,1) =[
0.4794 0.8776 0
0.0000 1.0000 0
-0.4794 0.8776 0];
z(:,:,2) =[
0.4794 0.8776 1.0000
0.0000 1.0000 1.0000
-0.4794 0.8776 1.0000];
z(:,:,3) =[
0.4794 0.8776 2.0000
0.0000 1.0000 2.0000
-0.4794 0.8776 2.0000];
%preallocate
Nodenumber = zeros(size(z,1)*size(z,2),size(z,3));
count =0;
for j = 1:size(z,3)
for i=1:size(z,1)
count = count +1;
Nodenumber(count,:) = z(i,:,j);
end
end
for ii = 1:size(z,1)*size(z,2)
output{ii} = ['Nodenumber(' num2str(ii) ') ' num2str(Nodenumber(ii,:))];
end
output'
I am unsure what you are looking for, so I created two different outputs.
Nodenumber(1,:)
Nodenumber(2,:)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Signal Integrity Kits for Industry Standards 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!