目录
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;