axis
设置坐标轴范围和纵横比
说明
axis
,其中 ydirection
ydirection
为 ij
,即将原点放在坐标区的左上角。y 值按从上到下的顺序逐渐增加。ydirection
的默认值为 xy
,即将原点放在左下角。y 值按从下到上的顺序逐渐增加。
axis
,其中 visibility
visibility
为 off
,即关闭坐标区背景的显示。而坐标区中的绘图仍会显示。visibility
的默认值为 on
,即显示坐标区背景。
示例
设置坐标轴范围
绘制正弦函数。
x = linspace(0,2*pi);
y = sin(x);
plot(x,y,'-o')
更改坐标轴范围,使 x 轴的范围从 到 ,y 轴的范围从 -1.5 到 1.5。
axis([0 2*pi -1.5 1.5])
在阶梯图周围添加填充
使用半自动坐标轴范围
创建一个绘图。设置 x 轴的范围和 y 轴的最小范围。使用自动计算的值作为 y 轴的最大范围。
x = linspace(-10,10,200); y = sin(4*x)./exp(.1*x); plot(x,y) axis([-10 10 0 inf])
设置多个坐标轴的坐标轴范围
从 R2019b 开始,您可以使用 tiledlayout
和 nexttile
函数显示分块图。调用 tiledlayout
函数以创建一个 2×1 分块图布局。调用 nexttile
函数以创建坐标区对象 ax1
和 ax2
。在每个坐标区中绘制数据。然后将两个坐标区的轴范围设置为相同的值。
tiledlayout(2,1) x1 = linspace(0,10,100); y1 = sin(x1); ax1 = nexttile; plot(ax1,x1,y1) x2 = linspace(0,5,100); y2 = sin(x2); ax2 = nexttile; plot(ax2,x2,y2) axis([ax1 ax2],[0 10 -1 1])
显示绘图而不显示坐标区背景
使用紧凑的坐标轴范围并返回值
绘制一个曲面。将坐标轴范围设置为等于数据范围,这样绘图可以扩展到坐标区边缘。
surf(peaks)
axis tight
返回当前坐标轴范围的值。
l = axis
l = 1×6
1.0000 49.0000 1.0000 49.0000 -6.5466 8.0752
更改坐标系的方向
创建棋盘图并更改坐标系的方向。
首先,使用 summer
颜色图创建绘图。默认情况下,x 轴的值按从左到右的顺序逐渐增加,y 轴的值按从下到上的顺序逐渐增加。
C = eye(10);
pcolor(C)
colormap summer
反转坐标系,这样 y 的值按从上到下的顺序逐渐增加。
axis ij
添加新绘图时保留当前的坐标轴范围
绘制一个正弦波。
x = linspace(0,10); y = sin(x); plot(x,y)
使用 hold on
将另一正弦波添加到坐标区中。通过将范围模式设置为手动来保留当前的坐标轴范围。
y2 = 2*sin(x); hold on axis manual plot(x,y2) hold off
如果您希望由这些坐标区自动选择合适的范围,请将范围模式设置回自动。
axis auto
输入参数
limits
— 坐标轴范围
四元素向量 | 六元素向量 | 八元素向量
坐标轴范围,指定为包含 4 个、6 个或 8 个元素的向量。
对于笛卡尔坐标区,以下列形式之一指定范围:
[xmin xmax ymin ymax]
- 将 x 坐标轴范围设置为从xmin
到xmax
。将 y 坐标轴范围设置为从ymin
到ymax
。[xmin xmax ymin ymax zmin zmax]
- 还将 z 坐标轴范围设置为从zmin
到zmax
。[xmin xmax ymin ymax zmin zmax cmin cmax]
- 还设置颜色范围。cmin
是对应于颜色图中的第一种颜色的数据值。cmax
是对应于颜色图中的最后一种颜色的数据值。
Axes
对象的 XLim
、YLim
、ZLim
和 CLim
属性存储范围值。
对于极坐标区,以下列形式指定范围:
[thetamin thetamax rmin rmax]
- 将 theta 坐标轴范围设置为从thetamin
到thetamax
。将 r 坐标轴范围设置为从rmin
到rmax
。
PolarAxes
对象的 ThetaLim
和 RLim
属性存储范围值。
如果只想自动确定部分坐标区范围,请对您希望坐标区自动选择的范围使用 inf
或 -inf
。例如,axis([-inf 10 0 inf])
将由坐标区选择合适的最小 x 轴范围和最大 y 轴范围。它对最大 x 轴范围和最小 y 轴范围使用指定值。
示例: axis([0 1 0 1])
示例: axis([0 1 0 1 0 1])
示例: axis([0 inf 0 inf])
mode
— 用来确定坐标轴范围的手动、自动或半自动选择
manual
| auto
| 'auto x'
| 'auto y'
| 'auto z'
| 'auto xy'
| 'auto xz'
| 'auto yz'
用来确定坐标轴范围的手动、自动或半自动选择,指定为该表中的以下值之一。所有自动模式值都使用 tickaligned
style
来计算您指定的轴或坐标区的限制。
值 | 描述 | 更改的坐标区属性 |
---|---|---|
manual | 将所有坐标轴范围冻结在它们的当前值。 | 将 XLimMode 、YLimMode 和 ZLimMode 设置为 'manual' 。如果使用的是极坐标区,则此选项会将 ThetaLimMode 和 RLimMode 设置为 'manual' 。 |
auto | 自动选择所有坐标轴范围。 | 将 XLimMode 、YLimMode 和 ZLimMode 设置为 'auto' 。如果使用的是极坐标区,则此选项会将 ThetaLimMode 和 RLimMode 设置为 'auto' 。 |
'auto x' | 自动选择 x 坐标轴范围。 | 将 XLimMode 设置为 'auto' 。 |
'auto y' | 自动选择 y 坐标轴范围。 | 将 YLimMode 设置为 'auto' 。 |
'auto z' | 自动选择 z 坐标轴范围。 | 将 ZLimMode 设置为 'auto' 。 |
'auto xy' | 自动选择 x 轴和 y 坐标轴范围。 | 将 XLimMode 和 YLimMode 设置为 'auto' 。 |
'auto xz' | 自动选择 x 轴和 z 坐标轴范围。 | 将 XLimMode 和 ZLimMode 设置为 'auto' 。 |
'auto yz' | 自动选择 y 轴和 z 坐标轴范围。 | 将 YLimMode 和 ZLimMode 设置为 'auto' 。 |
注意
这些选项不能用于极坐标区。
style
— 坐标轴范围和尺度
tight
| padded
| fill
| equal
| image
| square
| vis3d
| normal
坐标轴范围和尺度,指定为以下值之一。
值 | 描述 | 更改的坐标区属性 |
---|---|---|
tickaligned | 通常,将坐标区框的边缘与最接近数据的刻度线对齐,但不排除任何数据。外观可能因绘制的数据类型和创建的图类型而异。 |
|
tight | 将坐标轴范围设置为等同于数据范围,使轴框紧密围绕数据。 |
|
padded | 坐标区框紧贴数据,只留很窄的填充边距。边距的宽度大约是数据范围的 7%。 |
|
equal | 沿每个坐标轴使用相同的数据单位长度。 | 将 此样式禁用默认的“伸展填充”行为。 |
image | 沿每个坐标区使用相同的数据单位长度,并使坐标区框紧密围绕数据。 | 将 此样式禁用默认的“伸展填充”行为。 |
square | 使用相同长度的坐标轴线。相应调整数据单位之间的增量。 | 将 此样式禁用默认的“伸展填充”行为。 |
fill | 启用“伸展填充”行为(默认值)。每个轴线的长度恰好围成由坐标区的 Position 属性所定义的位置矩形。 | 将 |
vis3d | 冻结纵横比属性。 | 将 |
normal | 还原默认行为。 | 将 |
有关图框纵横比和数据纵横比的详细信息,请参阅 PlotBoxAspectRatio
和 DataAspectRatio
属性。
注意
这些选项不能用于极坐标区,除非使用 axis tight
和 axis normal
命令。
ydirection
— y 轴方向
xy
(默认) | ij
y 轴方向,指定为下列值之一:
xy
- 默认方向。对于二维视图中的坐标区,y 轴是垂直的,值从下到上逐渐增加。ij
- 反转方向。对于二维视图中的坐标区,y 轴是垂直的,值从上到下逐渐增加。
注意
这些选项不能用于极坐标区。
visibility
— 坐标区线条和背景的可见性
"on"
| "off"
| true
或 1
| false
或 0
| OnOffSwitchState
值
坐标区线条和背景可见性,指定以下任一值:
"on"
或"off"
- 值"on"
显示坐标区线条和背景,"off"
隐藏它们。您还可以指定字符向量'on'
或'off'
。数值或逻辑值
1
(true
) 或0
(false
) - 值1
或true
显示坐标区线条和背景,0
或false
隐藏它们。 (自 R2024a 起)matlab.lang.OnOffSwitchState
值 - 值matlab.lang.OnOffSwitchState.on
显示坐标区线条和背景,值matlab.lang.OnOffSwitchState.off
隐藏它们。 (自 R2024a 起)
注意
使用括号指定 1
、0
、true
、false
或 OnOffSwitchState
值。例如,axis(0)
和 axis(false)
隐藏坐标轴。
对于值 "on"
和 "off"
来说,括号是可选的。例如,axis off
隐藏坐标区。
指定可见性可将 Axes
对象或 PolarAxes
对象的 Visible
属性设置为指定的值。
ax
— 目标坐标区
一个或多个坐标区
目标坐标区,指定为一个或多个坐标区。您可以指定 Axes
对象或 PolarAxes
对象。如果不指定坐标区,则由 axis
为当前坐标区 (gca
) 设置范围。
指定坐标区时,需要将字符向量类型的其他输入参量用单引号引起来。
示例: axis(ax,'tight')
示例: axis(ax,limits)
示例: axis(ax,'manual')
输出参量
提示
您可以将多个输入参量结合使用,例如
axis image ij
。选项从左到右进行计算。后面的选项会覆盖前面的选项设置的属性。如果坐标区不存在,则
axis
函数会创建坐标区。使用
hold on
避免绘图函数覆盖预设的坐标轴范围。
版本历史记录
在 R2006a 之前推出R2024a: 通过指定逻辑值或 OnOffSwitchState
值来显示或隐藏坐标区
通过将 visibility
输入参量指定为逻辑值或 matlab.lang.OnOffSwitchState
值来显示或隐藏坐标区。值 1
和 true
等效于 "on"
,0
和 false
等效于 "off"
。
仍支持值 "on"
和 "off"
。
另请参阅
函数
属性
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)