[Matlab]去除绘图周围空白边界

一、原理

figure如同一张画布,axes是坐标轴用来控制所画图的位置和大小。

在matlab的帮助文档中Graphics->Formatting and Annotation->Coordinate System->Properties->Axes Properties有axes的属性,在Location and Size中可以看到主要有:

Position

TightInset

OuterPosition

下图是三者的关系,OuterPosition是外边框(红色虚线),Position是内边框(绿色实线),TightInset是有效边界(蓝色)与Position之间的部分(理解它才能自定义axes)。

[Matlab]去除绘图周围空白边界_第1张图片

图片引自matlab帮助手册。

二、方法

方法1:加一句命令即可

set(gca,'LooseInset',get(gca,'TightInset'))

去除的不是很完全。

方法2:加一句命令即可

set(gca,'looseInset',[0 0 0 0])

三、样例展示

1、未去除绘图周围空白边界:

图中浅绿色区域即为绘图周围边界,可以看出,默认的空白边界比较宽


[Matlab]去除绘图周围空白边界_第2张图片

2、去除绘图周围空白边界,以命令set(gca,'looseInset',[0 0 0 0])为例,效果如下:


[Matlab]去除绘图周围空白边界_第3张图片
去掉空白边界

命令set(gca,'looseInset',[0 0 0 0])的作用好比于Figure图形窗口中File——Export Setup——size——Expand axes to fill figure

一般我们使用图片的时候,先设定好图片尺寸,再进行去除绘图周围空白边界的操作

3、参考文章:【Matlab】去除图片周围空白区域(plot subplot)

你可能感兴趣的:([Matlab]去除绘图周围空白边界)