在Matlab图中显示多个图

时间:2014-11-04 13:15:51

标签: matlab

我想绘制2个数字并分别保存为suva1.figsuva2.fig。在第一个图中有5条相同的线,在第二个图中有4条相同的线。以下是我的代码。但我无法获得所需的情节。请说明如何编辑代码以获得所需的结果。

clear all
clc
x1=[1:1:50];
y1=[1:1:50];
x2=[1:2:100];
y2=[1:2:100];
for i=1:2
if (i==1)
    for j=1:5
h=figure
plot(x1,y1,'o')
hold on
    end
saveas(h, 'suva1','fig')
end
if (i==2)
    for j=1:4
h=figure
plot(x2,y2,'o')
    end
saveas(h, 'suva2','fig')
end
end

1 个答案:

答案 0 :(得分:1)

从您的代码中看,您似乎并未尝试在单个图中显示多个图。另外,我不确定你为什么放这个循环     for(j = 1:5)

要在同一个绘图上绘制多条线,请使用hold on命令:

h=figure
plot(x1, y1, 'o'); hold on;
plot(x2, y2, 'k');
hold off;

使用子图:

h = figure;
subplot(2,1,1);
plot(x1,y1,'o'); hold on;
subplot(2,1,2);
plot(x2,y2,'k');
hold off;

要保存2个单独的地块:

h = figure;
plot(x1,y1,'o');
saveas(h, 'suva1','fig');
close(h);
h2 = figure;
plot(x2,y2,'o');
saveas(h2, 'suva2','fig');
close(h2);
相关问题