MATLAB常用函数-gcf / gca / gco

MATLAB R2019a

gcf:  返回当前图像对象的句柄值

语法:

h = gcf % 返回当前图像的句柄,如果没有图像,则会自动创建一个,然后返回其句柄

gca返回当前坐标轴对象的句柄值

语法:

h = gca % 返回当前图像中的当前坐标句柄;如果没有坐标轴,就自动画一个,然后返回其句柄。

gco:  返回当前鼠标单击的句柄值,该对象可以是除root对象外的任意图形对象,并且MATLAB会把当前图形对象的句柄值放在Figure的CurrentObject属性中。

       在学术论文或学术报告中,往往有大量的图片,如何编辑这些图片是一件不小的任务。编辑图片一方面是因为杂志社或论文本身对图片大小有要求,另一方面也是为了文章的美观。我见过很多同学在用MATLAB画完图后直接截图,这样很不好。因为截的图不是矢量图,若大小不合适,在拉伸或缩放的过程中会对图形造成损害,分辨率被破坏。其实在MATLAB中有COPY图片的功能,即在工具栏中“Edit”中的“Copy Figure”选项,然后直接粘贴到论文中即可。

但是这样的图片在缩放的时候文字大小不变,同样会造成图形的破坏。那么如何解决这个问题呢?只有在画图前将图片的大小、图形在图片中的比例、文字的大小调整好,然后直接复制到论文中,什么也不需要动。既简单又实用。

一般而言,只需对目标图像进行图形句柄对象坐标轴句柄对象进行操作即可。MATLAB中分别用gcfgca表示。如:

set(gcf,’unit’,’centimeters’,’position’,[10 5 7 5]);

这就是对图形的位置大小进行设置。单位为厘米,大小为7cm×5cm,图形起点坐标为(10cm,5cm)表示左下点离显示器左侧边界10cm,离下侧边界5cm。

图形大小设置好之后,就需要设置实际的图在figure中的比例,这就需要对图形的坐标进行设置。

set(gca,'Position',[.2 .2 .7 .65]);

位置[.2 .2 .7 .65]表示所画的图形在figure中所占的比例,前两个值表示位置,后两个值表示大小

下面给出一个例子说明:

t = 0:0.01:2
x = sin(2*pi*t);
plot(t,x,'k','linewidth',2)
set (gcf, 'unit', 'centimeters', 'position', [3 5 7 5])
set (gca, 'Position', [.15 .15 .8 .75]);
set (get(gca, 'XLabel'),'FontSize',8);

MATLAB常用函数-gcf / gca / gco_第1张图片

你可能感兴趣的:(Matlab,matlab,开发语言)