Matlab - 使用 set() 更新 caxis 的限制
Matlab - Update limits of caxis with set()
figure
surf(peaks)
colorbar;
h = caxis;
我想更新 caxis 的限制。我知道这可以通过 caxis([cmin cmax])
来完成。但是假设我有多个数字,这只能通过设置当前数字来实现。
根据MATLAB's Documentation,属性名字是limits
,但是set(h, 'limits', [-1 1])
给我一个错误('Invalid or deleted object').
如文档中的示例之一所示,您在这里要做的是使用 target
输入到 caxis
函数。 limits
是一个输入参数,而不是可以与 set
一起使用的 属性。
您的示例将变为:
figure;
surf(peaks);
h = gca;
colorbar;
caxis(h,[-1 1]);
或者,如果您要在设置限制之前创建许多地块,
figure;
h = axes;
surf(peaks);
colorbar;
caxis(h,[-1 1]);
limits
,根据官方文档,是一个包含最小值和最大值的二元向量,它不应用作 属性 名称:
vector of the form [cmin cmax]
如果您想同时为所有现有图形实现这一点,您可以找到所有现有轴并对所有轴应用相同的限制:
% Before Matlab R2014b, 0 must be used instead of groot!
all_axes = findall(groot,'Type','axes');
caxis(all_axes,[-10 10]);
figure
surf(peaks)
colorbar;
h = caxis;
我想更新 caxis 的限制。我知道这可以通过 caxis([cmin cmax])
来完成。但是假设我有多个数字,这只能通过设置当前数字来实现。
根据MATLAB's Documentation,属性名字是limits
,但是set(h, 'limits', [-1 1])
给我一个错误('Invalid or deleted object').
如文档中的示例之一所示,您在这里要做的是使用 target
输入到 caxis
函数。 limits
是一个输入参数,而不是可以与 set
一起使用的 属性。
您的示例将变为:
figure;
surf(peaks);
h = gca;
colorbar;
caxis(h,[-1 1]);
或者,如果您要在设置限制之前创建许多地块,
figure;
h = axes;
surf(peaks);
colorbar;
caxis(h,[-1 1]);
limits
,根据官方文档,是一个包含最小值和最大值的二元向量,它不应用作 属性 名称:
vector of the form [cmin cmax]
如果您想同时为所有现有图形实现这一点,您可以找到所有现有轴并对所有轴应用相同的限制:
% Before Matlab R2014b, 0 must be used instead of groot!
all_axes = findall(groot,'Type','axes');
caxis(all_axes,[-10 10]);