YSF*_*YSF 5 matlab plot legend
以下是我的matlab代码的一部分.如图所示,我想在一个图中绘制8条曲线.但我想用一种独特的颜色制作每条曲线.我还想更改图例,以便每个图例都更改i
.
例如,对于i = 1,图例将是gho-1,对于i = 2 gho-2,依此类推.我希望它是自动的,因为我i
有时会改变ex:(i = 1:20).
for i=1:8
.
.
.
plot(b,r,'b');
legend(['qho-',num2str(i)]);
hold on
end
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
你好,我们又见面了,
我有其他问题:如果我有以下内容
for i=1:8
.
b1=(1:3,:)
b2=(3:6,:)
figure(1);plot(b1,r,'*');
figure(2);plot(b2,r,'*');
Leg{i} = ['qho-',num2str(i)];
end
legend(Leg)
Run Code Online (Sandbox Code Playgroud)
我只获得了最后一个数字的颜色传奇.不是两个..我怎么解决这个问题?!
再次感谢
只需使用hold all
而不是hold on
将图例标签放在单元格数组中
hold all
for i=1:8
.
.
.
plot(b,r);
Leg{i} = ['qho-',num2str(i)];
end
legend(Leg)
Run Code Online (Sandbox Code Playgroud)
请参阅此问题,例如:稀疏矩阵图matlab
注意:
从Matlab R2014b开始,hold on
已被修改为类似hold all
,即每次绘制一个图时改变颜色.文档声明hold all
将在以后的版本中删除语法.
怎么样的:
figure, hold on
N = 8;
h = zeros(N,1); %# store handle to line graphic objects
clr = lines(N); %# some colormap
for i=1:N
%# plot random data
y = cumsum(randn(100,1));
h(i) = plot(y, 'Color',clr(i,:));
end
hold off
legend(h, num2str((1:N)','gho-%d')) %# display legend
Run Code Online (Sandbox Code Playgroud)