目录
gca的作用是获得当前坐标区或图
ax = gca
ax = gca 返回当前图窗中的当前坐标区(或独立可视化)。使用 ax 获取和设置当前坐标区的属性。如果当前图窗中没有坐标区或图,则 gca 会创建一个笛卡尔坐标区对象。
绘制一个正弦波。如图所示:
- x = linspace(0,10);
- y = sin(4*x);
- plot(x,y)

设置当前坐标区的字体大小、刻度方向、刻度长度以及 y 坐标轴范围。使用 gca 指代当前坐标区。
- x = linspace(0,10);
- y = sin(4*x);
- %%
- ax = gca; % current axes
- ax.FontSize = 12;
- ax.TickDir = 'out';
- ax.TickLength = [0.02 0.02];
- ax.YLim = [-2 2];
- %%
- plot(x,y)

当前坐标区
当前坐标区是许多图形命令的默认目标对象,如 plot、title 和 xlim。以下类型的对象可以成为当前坐标区。通常,当前坐标区是所创建、点击或绘制的下列对象中的最后一个对象。
Axes 对象。
PolarAxes 对象。
GeographicAxes 对象。
独立可视化,它是出于特殊目的设计的图,其工作方式独立于其他图。例如,heatmap 是一个独立可视化,用于观察表数据中两个变量之间的交互。
图窗的 CurrentAxes 属性存储其当前坐标区。
提示
通过用户交互方式可以更改当前坐标区或图。更好的做法是在创建坐标区或图时将其赋给某个变量,而不是依赖 gca。
更改当前图窗也会更改当前坐标区或图。
在绘图后再设置坐标区属性,因为某些绘图函数会重置坐标区属性。
要访问当前坐标区或图而不强制创建笛卡尔坐标区,请使用圆点表示法查询图窗的 CurrentAxes 属性。如果不存在当前坐标区,MATLAB® 将返回一个空数组。
- fig = gcf;
- ax = fig.CurrentAxes;