How to create column headers?
古いコメントを表示
I have the following code:
months=1:12;
orientation = [0, -90];
row = 1:3;
tilt = [0,10,20,30,40,50,60,70,80,90];
irr = [10,110,120,130,140,150,160,170,180,190];
table.x=tilt;
table.y=irr;
for m=1:length(months)
for o=1:length(orientation)
for r=1:length(row)
disp([m,o,r])
for n=1:length(tilt)
table.x=tilt(n);
table.y=irr(n);
disp(table)
end
end
end
end
How can I have x and y as the column headers instaed of having them noting every element? for example for m=1,0=2,r=3, I want the output to be:
1 2 3
x y
0 10
10 110
20 120
30 130
40 140
50 150
60 160
70 170
80 180
90 190
採用された回答
その他の回答 (1 件)
My preference is to use the table function to create a MATLAB table (data type table instead of structure)
x = [0,10,20,30,40,50,60,70,80,90]';
y = [10,110,120,130,140,150,160,170,180,190]';
data = table(x,y)
However, to stick to the same approach you are using, remove the last loop. I've reduced months and row to limit the output length here.
months=1:1;
orientation = [0, -90];
row = 1:1;
tilt = [0,10,20,30,40,50,60,70,80,90];
irr = [10,110,120,130,140,150,160,170,180,190];
for m=1:length(months)
for o=1:length(orientation)
for r=1:length(row)
disp([m,o,r])
table.x=tilt';
table.y=irr';
disp(["x","y"])
disp([table.x table.y])
end
end
end
To create exactly what you specified, you can use fprintf instead of disp
for m=1:length(months)
for o=1:length(orientation)
for r=1:length(row)
fprintf('%g %g %g',m,o,r)
fprintf('%s %s',"x","y")
table.x=tilt';
table.y=irr';
fprintf('%g %g\n',[table.x table.y]')
end
end
end
カテゴリ
ヘルプ センター および File Exchange で Tables についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!