Matlab 显示图片和SubPlot命令
最近写个图片搜索引擎,恶补Matlab中。。。。
- matlab显示图片命令:*
1
2f1=imread('E:/iaprtc12/iaprtc12/images/02/2007.jpg') %读取图像矩阵
imshow(f1) %显示该图像
- 但是如果需要在一个界面内显示多幅图片 就需要SubPlot命令帮助了*
形式:subplot(m,n,p
)或者subplot(m n p)
。
说明:subplot是将多个图画到一个平面上的工具。其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果第一个数字是2就是表示2行图。p是指你现在要把曲线画到figure中哪个图上,最后一个如果是1表示是从左到右第一个位置,n*m表示最后一个图。
形式:subplot(m,n,p
)或者subplot(m n p)
。
说明:P也可以是向量表示将P 中指定的小块合并成一个大块创建坐标系,P 中指定的小块可以不连续,甚至不相连。比如subplot(2,3,[2 5])表示将第2和5小块连成一个大块;subplot(2,3,[2 6])由于2和6不连续也不相连,此时表示将第2、3、5和6四块连成一个大块,相当于subplot(2,3,[2 3 5 6])
形式:subplot('Position',[left bottom width height])
。
说明:在指定位置创建一个新坐标系,等效于
1 | axes('Position',[left bottom width height]) |
缺点是我不知道怎么比较好的控制图片的大小(请高手指教),好像每个子区域的大小是默认设置的,而且图片会默认的四周留空,不过反正只是为了更清楚的看到实验结果,这个没什么关系。
- 绘制图表的话,就比较容易控制图片的大小和位置*
例如:
1 | t=0:0.001:1; |
或者通过axes函数来重新规定子窗口的大小和位置
axes('position',[.1 .1 .8 .6])
mesh(peaks(20));
axes('position',[.1 .7 .8 .2])
pcolor([1:10;1:10]);
*```
![](http://pics.naaln.com/blog/2019-01-14-062329.jpg-basicBlog)
The Why·Liam·Blog by WhyLiam is licensed under a Creative Commons BY-NC-ND 4.0 International License.
由WhyLiam创作并维护的Why·Liam·Blog采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于Why·Liam·Blog (https://blog.naaln.com),版权所有,侵权必究。
本文永久链接:https://blog.naaln.com/2013/09/matlab-displays-pictures-and-subplot-command/