原文地址:http://blog.sina.com.cn/s/blog_6cf5b21b0101g4cd.html
matlab 输出图片文件时,图片的四周总有白色边框,如何裁剪掉这些边框呢。
首先要了解的是Matlab是面向对象的。最高等级的对象是screen,它定义了figure可以用的最大szie。screen下面是figure。figue就是你画图的时候跳出来的那个新的对话窗口。如果figure变化,screen是不会跟着变化的。但screen变化的话,figure就要跟着变化了。
运行如下命令:
[x,y]=meshgrid(1:15,1:15);
tri = delaunay(x,y);
z = peaks(15);
H = trisurf(tri,x,y,z);
view(2);
显示如下:
![[转载]matlab图片输出(一) <wbr>去掉输出图片的边框 [转载]matlab图片输出(一) <wbr>去掉输出图片的边框](https://i-blog.csdnimg.cn/blog_migrate/b3f4e8b36bf83ddc16dc44f88052c53c.jpeg)
这个figure1就是figure,里面坐标系包围的就是axes。 输出图片时,就会留下外面的灰色边框。
如果运行get(gcf), get(gca),get(H) 就会等到许多你可以修改的关于更个层次对象的句柄。
set(gcf,'color',[0 0 0.3]);可以更个灰色部分的颜色。
如果使之为空则为, set(gcf,'color','none'); 效果如下:
![[转载]matlab图片输出(一) <wbr>去掉输出图片的边框 [转载]matlab图片输出(一) <wbr>去掉输出图片的边框](https://i-blog.csdnimg.cn/blog_migrate/8ca3c83e20aa9795d523158ef209e915.jpeg)
set(gcf,'InvertHardcopy','off');
set(gcf,'paperpositionmode','auto') ; 当打印或保存图片时,matlab会调整图片大小,设置为auto,matlab就不会自动调整图片大小了。
调整plot area的显示范围,以去掉白色边框部分。
axis([min(x(:)) max(x(:)) min(y(:)) max(y(:))]);
![[转载]matlab图片输出(一) <wbr>去掉输出图片的边框 [转载]matlab图片输出(一) <wbr>去掉输出图片的边框](https://i-blog.csdnimg.cn/blog_migrate/c414e92503aa9fbb2e3cf45c5ee7b36a.jpeg)
如何去掉周围的边框呢。
set(gca,'position',[0 0 1 1]); 效果如下:
![[转载]matlab图片输出(一) <wbr>去掉输出图片的边框 [转载]matlab图片输出(一) <wbr>去掉输出图片的边框](https://i-blog.csdnimg.cn/blog_migrate/56170eee1f128da4af5cef86ccfb2fe9.jpeg)