在我的GUI中,我想在不同颜色的同一图上绘制多个矩阵。矩阵正在从不同文件夹中的.mat文件组合,所以我目前正在结构中保存它们。如何告诉绘图仪将每个矩阵绘制成不同的颜色和符号?感谢
编辑:
我正在尝试使用
plot(1:size(small_group,1),small_group,'.')
set(0,'DefaultAxesColorOrder',[1 0 0;0 1 0]);
然而,这改变了每一行的颜色。我还没有多少调整符号。
我在结构中手动添加了多个矩阵,
plot(small_group_struct(1,2).values)
hold on; plot(small_group_struct(1,1).values)
我希望能够使用set(0,'DefaultAxesColor', [1 0 0; 0 1 0], ...
'DefaultAxesLineStyleOrder','-|--|:|-.');
来调整颜色和符号,但它会改变每列而不是矩阵的颜色/符号。
答案 0 :(得分:1)
只需使用语法
即可plot(mat1, 'r');
hold on;
plot(mat2, 'g');
但是,不是对值进行硬编码,而是从您自己的表中计算它们:
mystyles = {'r-', 'g:', 'k|'};
plotstyle = mystyles{mod(plotnum, length)+1};
plot(values, plotstyle);
我使用mod
围绕开头回圈。您可以使用您想要的任何逻辑,包括将不同的颜色和样式与两个不同的算术组合。
答案 1 :(得分:0)
这是正确的方法:
aa=gca;
for i=1:N
plot(mat(:,:,i),'color',aa.ColorOrder(aa.ColorOrderIndex,:))
end
它将为同一矩阵中的所有行设置相同的颜色。