我对如何subplot
运作有点不清楚.具体来说,MATLAB subplot(121)
和subplot(1,2,1)
MATLAB 之间有什么区别?我试图搜索subplot
文档,但我似乎无法找到我要找的东西.
ray*_*ica 42
长话短说,没有区别.如何subplot
工作如下:
subplot(m,n,p); %//or
subplot(mnp);
Run Code Online (Sandbox Code Playgroud)
你有三个号码subplot
. 在同一窗口中subplot
放置多个数字.您可以将绘图放在m x n
网格中,其中m
包含行数并n
包含图中的列数. p
决定哪里要放置在网格中的情节.数字p
从1
最多增加到m x n
,并且图表从左到右,从上到下放置.
在这种情况下,当你做subplot(1,2,1);
或者subplot(121);
,你想有一个行2列价值的数字.最后一个数字p=1
表示您希望将绘图放在最左侧的列中.当你这样做subplot(1,2,2);
或者subplot(122);
,这是当p=2
你想放置在小区右侧最栏.
您如何使用subplot
以下列方式:
m
和n
).figure
窗口subplot
并选择您想要绘图的位置的正确位置.subplot
插槽.这是一个说明性的例子.让我们在同一个窗口中创建一个有两行和三列数字的窗口.因此:
figure;
rng(10); %// Set seed for reproducibility
subplot(2,3,1);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('First plot');
subplot(2,3,2);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Second plot');
subplot(2,3,3);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Third plot');
subplot(2,3,4);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Fourth plot');
subplot(2,3,5);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Fifth plot');
subplot(2,3,6);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Sixth plot');
Run Code Online (Sandbox Code Playgroud)
上面的代码所做的是我们生成随机的点集,100 x 1
每个点都是成对的x
,y
并且我们在整个窗口内的多个位置绘制它们.请注意,最后一个参数subplot
线性增加,而前两个参数保持不变.在开始绘图之前,您必须确保在整个窗口中知道了多少个数字.上面描述的代码的图如下所示:
您还可以指定点矢量p
.然而,你应该做这种方式,你必须调用subplot
这种方式:subplot(m,n,p);
.如果p
是单个数字,则其中一个subplot(m,n,p);
或subplot(mnp)
将起作用.
如果指定p
为矢量,那么您所做的是您创建的一个图将占用同一图形窗口中的多个空格/槽.例如,如果你执行了:subplot(2,3,1:3);
,这将占用一个图并占据图中的整个第一行.然后,您可以在插槽4,5和6中发出更多绘图.换句话说:
figure;
rng(10); %// Set seed for reproducibility
subplot(2,3,1:3);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('First plot');
subplot(2,3,4:5);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Second plot');
subplot(2,3,6);
x = rand(100,1);
y = rand(100,1);
plot(x,y,'b.');
title('Third plot');
Run Code Online (Sandbox Code Playgroud)
该图看起来像:
如您所见,我们使用第一个绘图占据了第一行subplot(2,3,1:3);
.的第二曲线占用时隙p=4,p=5
使用subplot(2,3,4:5);
.这占据第二行,第一列和第二列.最后我们的最后一个图占据第二行,第三列使用subplot(2,3,6);
.请记住,插槽从左到右,从上到下,p
不仅可以是单个数字,还可以是矢量.如果你想占据前两行和两列,你可以选择subplot(2,3,[1 2 4 5]);
Now,如果你想占据整个最右边的列,你可以这样做subplot(2,3,[3 6]);
,或者如果你只想要最右边列中最顶层的位置,你可以做subplot(2,3,3);
或者subplot(233);
,如果你想要解决最后一列和右下角的最后一个位置,你可以做subplot(2,3,6);
或subplot(236);
我想确保你记住的最后一件事是你需要确保subplot
在决定展示你的情节之前打电话.完成后,切换到下一个插槽并继续工作.
希望这可以帮助!祝好运!