我有一个带有2个子图的图。 我想知道是否可以(以及如何)在所有子图中同时绘制相同的图。
例如,在下图中,我想同时绘制(x,y),然后单独进行。
fig1 = figure
subplot(2,1,1)
plot(x,y)
hold on
subplot(2,1,2)
plot(x,y)
hold on
subplot(2,1,1)
plot(x,z)
subplot(2,1,2)
plot(x,k)
答案 0 :(得分:2)
您可以使用单元格数组set
执行此操作,如下所示。有关详细信息,请参阅documentation。
subplot(2,1,1);
h1 = plot(x,y); %// get a handle to the plot
subplot(2,1,2)
h2 = plot(x,y); %// get a handle to the plot
set([h1; h2], {'xdata'}, {x1; x2}, {'ydata'}, {y1; y2})
%// new values: x1 x2 y1 y2
答案 1 :(得分:0)
如果你问因为你想在16个子图后面绘制相同的图,那么你可以在一个循环中进行:
for k= 1:16
s(k) = subplot(4,4,k);
plot(x,y);
hold on;
end
如果您只想要2个子图,那么您当前的代码
没有任何问题