PolarAxes 属性
极坐标区的外观和行为
PolarAxes 属性控制 PolarAxes 对象的外观和行为。通过更改属性值,您可以修改极坐标区的特定方面。在绘图后再设置坐标区属性,因为某些图形函数会重置坐标区属性。
有些图形函数会在绘图时创建极坐标区。使用 gca 访问新创建的坐标区。要创建空的极坐标区,请使用 polaraxes 函数。
polarplot([0 pi/2 pi],[1 2 3]) ax = gca; d = ax.ThetaDir; ax.ThetaDir = 'clockwise';
字体
字体名称,指定为支持的字体名称或 "FixedWidth"。要正确显示和打印文本,您必须选择系统支持的字体。默认字体取决于您的操作系统和区域设置。
要使用在任何区域设置中都有较好显示效果的等宽字体,请使用 "FixedWidth"。等宽字体依赖于根 FixedWidthFontName 属性。设置根 FixedWidthFontName 属性会导致立即更新显示方式以使用新字体。
字体大小,指定为数值标量。字体大小会影响标题和刻度标签。还会影响与坐标区关联的任何图例或颜色栏。默认字体大小取决于具体操作系统和区域设置。默认情况下,字体大小以磅为单位进行测量。要更改单位,请设置 FontUnits 属性。
MATLAB® 会自动将某些文本缩放为坐标区字体大小的百分比。
标题 - 默认情况下为坐标区字体大小的 110%。要控制缩放比例,请使用
TitleFontSizeMultiplier和LabelFontSizeMultiplier属性。图例和颜色栏 - 默认情况下为坐标区字体大小的 90%。要指定不同的字体大小,请设置
Legend或Colorbar对象的FontSize属性。
示例: ax.FontSize = 12
字体大小的选择模式,指定为下列值之一:
'auto'- 由 MATLAB 指定的字体大小。如果将坐标区的大小调整为小于默认大小,则字体大小可能会缩小以改善可读性和布局。'manual'- 手动指定的字体大小。不随坐标区大小改变而缩放字体大小。要指定字体大小,请设置FontSize属性。
字符粗细,指定为 'normal' 或 'bold'。
MATLAB 使用 FontWeight 属性从系统提供的字体中选择一种字体。并非所有字体都有加粗字体。因此,指定加粗字体仍可能得到普通字体。
字符倾斜,指定为 'normal' 或 'italic'。
并非所有字体都有两种字体样式。因此,斜体可能看上去和常规字体一样。
标题字体大小的缩放因子,指定为大于 0 的数值。此缩放因子应用于 FontSize 属性的值,以确定标题的字体大小。
标题字符的粗细,指定为下列值之一:
'normal'- 特定字体定义的默认粗细'bold'- 字符粗细比普通的粗
副标题字符粗细,指定为下列值之一:
'normal'- 特定字体定义的默认粗细'bold'- 字符粗细比普通的粗
字体大小单位,指定为下列值之一。
Units | 描述 |
|---|---|
'points' | 磅。一磅等于 1/72 英寸。 |
'inches' | 英寸。 |
'centimeters' | 厘米。 |
'normalized' | 按坐标区高度的一定比例来解释字体大小。如果您调整坐标区的大小,则字体大小也会相应地修改。例如,如果 FontSize 为 0.1(归一化单位),则文本为坐标区属性 Position 中存储的高度值的 1/10。 |
'pixels' | 像素。 在 Windows® 和 Macintosh 系统上,像素的大小为 1/96 英寸。此大小与系统分辨率无关。 在 Linux® 系统上,一个像素的大小由系统分辨率确定。 |
要在同一个函数调用中设置字体大小和字体单位,必须先设置 FontUnits 属性,以便 Axes 对象能够正确解释指定的字体大小。
刻度
半径刻度值,指定为由递增值组成的向量。半径刻度值是 r 轴上显示圆环线的位置。半径刻度标签是您在每条线旁边看到的标签。使用 RTickLabels 属性指定关联的标签。
示例: ax.RTick = [0 2 4 6];
也可以使用 rticks 函数指定刻度值。
半径刻度值的选择模式,指定为下列值之一:
'auto'- 根据坐标轴的数据范围自动选择刻度值。'manual'- 手动指定刻度值。要指定值,请设置RTick属性。
示例: ax.RTickMode = 'auto'
半径刻度标签,指定为字符向量元胞数组、字符串数组或分类数组。如果您不希望显示刻度标签,请指定空元胞数组 {}。如果您没有为所有刻度值指定足够多的标签,将会重复使用标签。
刻度标签支持 TeX 和 LaTeX 标记。有关详细信息,请参阅 TickLabelInterpreter 属性。
如果将此属性指定为分类数组,MATLAB 将使用数组中的值,而不是类别。
示例: ax.RTickLabel = {'one','two','three','four'};
也可以使用 rticklabels 函数。
RTickLabel 属性值的选择模式,指定为下列值之一:
'auto'- 自动选择刻度标签。'manual'- 手动指定刻度标签。要指定标签,请设置RTickLabel属性。
用来显示从原点延伸的线条的角度,指定为递增值向量。MATLAB 用相应的角度值标记线条,除非您使用 ThetaTickLabel 属性指定不同的标签。
MATLAB 以 ThetaAxisUnits 属性确定的单位来解释值。
示例: ax.ThetaTick = [0 90 180 270];
也可以使用 thetaticks 函数指定值。
ThetaTick 属性值的选择模式,指定为下列值之一:
'auto'- 自动选择属性值。'manual'- 使用指定的属性值。要指定值,请设置ThetaTick属性。
角度线的标签,指定为字符向量元胞数组、字符串数组或分类数组。
如果您没有为所有线条指定足够多的标签,标签将会重复。标签支持 TeX 和 LaTeX 标记。有关详细信息,请参阅 TickLabelInterpreter 属性。
如果将此属性指定为分类数组,MATLAB 将使用数组中的值,而不是类别。
示例: ax.ThetaTickLabel = {'right','top','left','bottom'};
也可以使用 thetaticklabels 函数指定值。
ThetaTickLabel 属性值的选择模式,指定为下列值之一:
'auto'- 自动选择属性值。'manual'- 使用指定的属性值。要指定值,请设置ThetaTickLabel属性。
r 轴刻度标签旋转的选择模式,指定为以下值之一:
'auto'- 自动选择刻度标签旋转方式。'manual'- 使用您指定的刻度标签旋转方式。要指定旋转方式,请设置RTickLabelRotation属性。
沿 r 轴的次刻度线,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
'on'- 显示次刻度线。主刻度线和网格线的间距决定次刻度线的数目。仅当刻度长度为正(由TickLength属性控制)且极坐标区为整圆(由ThetaLim属性控制)时,此属性值的效果才可见。'off'- 不显示次刻度线。
示例: ax.RMinorTick = 'on';
角度线之间的次刻度线,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
'on'- 显示次刻度线。线条的间距确定次刻度线的数目。仅当刻度长度为正时,此属性值的效果才可见。要设置刻度长度,请使用TickLength属性,例如ax.TickLength = [0.02 0]。'off'- 不显示次刻度线。
零参照轴的位置,指定为 "right"、"top"、"left"、"bottom" 或角度值。如果指定角度值,请确保根据 ThetaAxisUnits 属性以度或弧度为单位指定该值。默认情况下,ThetaAxisUnits 属性设置为 "degrees"。
| 值 | 结果 |
|---|---|
"right" |
|
"top" |
|
"left" |
|
"bottom" |
|
45 |
|
示例: polaraxes(ThetaZeroLocation="left")
示例: polaraxes(ThetaZeroLocation=45)
刻度线方向,指定为下列值之一:
'in'- 刻度线从轴线指向内部。(二维视图的默认值)'out'- 刻度线从轴线指向外部。(三维视图的默认值)'both'- 刻度线以轴线为中心。'none'- 不显示任何刻度线。
TickDir 属性的选择模式,指定为下列值之一:
'auto'- 根据当前视图自动选择刻度方向。'manual'- 手动指定刻度方向。要指定刻度方向,请设置TickDir属性。
示例: ax.TickDirMode = 'auto'
刻度标签解释器,指定为下列值之一:
'tex'- 使用 TeX 标记子集解释标签。'latex'- 使用 LaTeX 标记子集解释标签。当您指定刻度标签时,请在元胞数组中的每个元素周围使用美元符号。'none'- 显示字面字符。
TeX 标记
默认情况下,MATLAB 支持一部分 TeX 标记。使用 TeX 标记可添加下标和上标,修改文本类型和颜色,并在标签中包括特殊字符。
修饰符会一直作用到文本结尾,但上标和下标除外,因为它们仅修饰下一个字符或花括号中的字符。当您将解释器设置为 "tex" 时,支持的修饰符如下所示。
| 修饰符 | 描述 | 示例 |
|---|---|---|
^{ } | 上标 | "text^{superscript}" |
_{ } | 下标 | "text_{subscript}" |
\bf | 粗体 | "\bf text" |
\it | 斜体 | "\it text" |
\sl | 伪斜体(通常与斜体相同) | "\sl text" |
\rm | 常规字体 | "\rm text" |
\fontname{ | 字体名称 - 将 替换为字体系列的名称。您可以将此说明符与其他修饰符结合使用。 | "\fontname{Courier} text" |
\fontsize{ | 字体大小 - 将 替换为以磅为单位的数值标量值。 | "\fontsize{15} text" |
\color{ | 字体颜色 - 将 替换为以下颜色之一:red、green、yellow、magenta、blue、black、white、gray、darkGreen、orange 或 lightBlue。 | "\color{magenta} text" |
\color[rgb]{specifier} | 自定义字体颜色 - 将 替换为三元素 RGB 三元组。 | "\color[rgb]{0,0.5,0.5} text" |
下表列出了 "tex" 解释器所支持的特殊字符。
| 字符序列 | 符号 | 字符序列 | 符号 | 字符序列 | 符号 |
|---|---|---|---|---|---|
| α |
| υ |
| ~ |
| ∠ |
| ϕ |
| ≤ |
|
|
| χ |
| ∞ |
| β |
| ψ |
| ♣ |
| γ |
| ω |
| ♦ |
| δ |
| Γ |
| ♥ |
| ϵ |
| Δ |
| ♠ |
| ζ |
| Θ |
| ↔ |
| η |
| Λ |
| ← |
| θ |
| Ξ |
| ⇐ |
| ϑ |
| Π |
| ↑ |
| ι |
| Σ |
| → |
| κ |
| ϒ |
| ⇒ |
| λ |
| Φ |
| ↓ |
| µ |
| Ψ |
| º |
| ν |
| Ω |
| ± |
| ξ |
| ∀ |
| ≥ |
| π |
| ∃ |
| ∝ |
| ρ |
| ∍ |
| ∂ |
| σ |
| ≅ |
| • |
| ς |
| ≈ |
| ÷ |
| τ |
| ℜ |
| ≠ |
| ≡ |
| ⊕ |
| ℵ |
| ℑ |
| ∪ |
| ℘ |
| ⊗ |
| ⊆ |
| ∅ |
| ∩ |
| ∈ |
| ⊇ |
| ⊃ |
| ⌈ |
| ⊂ |
| ∫ |
| · |
| ο |
| ⌋ |
| ¬ |
| ∇ |
| ⌊ |
| x |
| ... |
| ⊥ |
| √ |
| ´ |
| ∧ |
| ϖ |
| ∅ |
| ⌉ |
| 〉 |
| | |
| ∨ |
| 〈 |
| © |
LaTeX 标记
要使用 LaTeX 标记,请将 TickLabelInterpreter 属性设置为 'latex'。使用美元符号将标签括起来,例如,对于行内模式,使用 '$\int_1^{20} x^2 dx$';对于行间模式,使用 '$$\int_1^{20} x^2 dx$$'。
显示的文本将使用默认的 LaTeX 字体样式。FontName、FontWeight 和 FontAngle 属性不起任何作用。要更改字体样式,请在文本中使用 LaTeX 标记。用于 LaTeX 解释器的文本最多可以包含 1200 个字符。对于多行文本,需在此基础上每行再减少约 10 个字符。
MATLAB 支持大多数标准 LaTeX 数学模式命令。有关详细信息,请参阅支持的 LaTeX 命令。有关使用 TeX 和 LaTeX 的示例,请参阅图文本中的希腊字母和特殊字符。
刻度线长度,指定为二元素向量。第一个元素决定刻度长度。第二个元素将被忽略。
示例: ax.TickLength = [0.02 0];
标尺
最小和最大半径范围,指定为 [rmin rmax] 形式的二元素向量,其中 rmax 是大于 rmin 的数值。您可以指定这两个范围,也可以指定一个范围而让坐标区自动计算另一个范围。
要自动将最小范围设置为最小数据值,请将第一个元素指定为
-inf,例如[-inf 0]。要自动将最大范围设置为最大数据值,请将第二个元素指定为
inf,例如[0 inf]。
也可以使用 rlim 函数设置这些范围。
示例: ax.RLim = [0 6];
RLim 属性值的选择模式,指定为下列值之一:
'auto'- 自动设置属性值。'manual'- 使用指定的属性值。要指定值,请设置RLim属性。
最小和最大角度值,指定为 [thmin thmax] 形式的二元素向量。如果两个值的差小于 360 度,则 theta 轴为部分圆。
MATLAB 以 ThetaAxisUnits 属性确定的单位来解释值。
示例: ax.ThetaLim = [0 180];
ThetaLim 属性值的选择模式,指定为下列值之一:
'auto'- 自动选择属性值。'manual'- 使用指定的属性值。要指定值,请设置ThetaLim属性。
用于控制 r 轴的外观和行为的组件,以标尺对象形式返回。当 MATLAB 创建极坐标区时,它会自动为 r 轴创建标尺。通过访问相关联的标尺并设置标尺属性,修改此轴的外观和行为。如需选项列表,请参阅 NumericRuler 属性。
例如,将 r 轴的颜色更改为红色。
ax = polaraxes;
ax.RAxis.Color = 'r';
使用 RAxis 属性访问标尺对象并设置标尺属性。如果您要设置极坐标区属性,请直接在 PolarAxes 对象上设置它们。
用于控制 theta 轴的外观和行为的组件,以标尺对象形式返回。当 MATLAB 创建极坐标区时,它会自动为 theta 轴创建数值标尺。通过访问相关联的标尺并设置标尺属性,修改此轴的外观和行为。如需选项列表,请参阅 NumericRuler 属性。
例如,将 theta 轴的颜色更改为红色。
ax = polaraxes;
ax.ThetaAxis.Color = 'r';
使用 ThetaAxis 属性访问标尺对象并设置标尺属性。如果您要设置极坐标区属性,请直接在 PolarAxes 对象上设置它们。
r 轴的位置,指定为标量角度值。MATLAB 以 ThetaAxisUnits 属性确定的单位解释值。
示例: ax.RAxisLocation = 90;
RAxisLocation 属性值的选择模式,指定为下列值之一:
'auto'- 自动选择属性值。'manual'- 使用指定的属性值。要指定值,请设置RAxisLocation属性。
r 轴(包括 r 轴网格线、刻度线和刻度标签)的颜色。将此值指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。
注意
如果您指定 GridColor 属性,网格线将改用 GridColor 属性中的颜色。有关详细信息,请参阅 GridColorMode。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]范围内,例如[0.4 0.6 0.7]。十六进制颜色代码是字符串标量或字符向量,以井号 (
#) 开头,后跟三个或六个十六进制数字,范围可以是0到F。这些值不区分大小写。因此,颜色代码"#FF8800"与"#ff8800"、"#F80"与"#f80"是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。
| 颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
例如,ax.RColor = 'r' 将颜色更改为红色。

用于设置 r 轴网格颜色的属性,指定为 'auto' 或 'manual'。模式值仅影响 r 轴网格颜色。无论在什么模式下,r 轴刻度标签始终使用 RColor 值。
r 轴网格颜色取决于 RColorMode 属性和 GridColorMode 属性,如下表所示。
| RColorMode | GridColorMode | r 轴网格颜色 |
|---|---|---|
'auto' | 'auto' | GridColor 属性 |
'manual' | GridColor 属性 | |
'manual' | 'auto' | RColor 属性 |
'manual' | GridColor 属性 |
r 轴次网格颜色取决于 RColorMode 属性和 MinorGridColorMode 属性,如下表所示。
| RColorMode | MinorGridColorMode | r 轴次网格颜色 |
|---|---|---|
'auto' | 'auto' | MinorGridColor 属性 |
'manual' | MinorGridColor 属性 | |
'manual' | 'auto' | RColor 属性 |
'manual' | MinorGridColor 属性 |
theta 轴(包括 theta 轴网格线、刻度线、刻度标签)的颜色。将此值指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。
注意
如果您指定 GridColor 属性,网格线将改用 GridColor 属性中的颜色。有关详细信息,请参阅 GridColorMode。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]范围内,例如[0.4 0.6 0.7]。十六进制颜色代码是字符串标量或字符向量,以井号 (
#) 开头,后跟三个或六个十六进制数字,范围可以是0到F。这些值不区分大小写。因此,颜色代码"#FF8800"与"#ff8800"、"#F80"与"#f80"是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。
| 颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
例如,ax.ThetaColor = 'r' 将颜色更改为红色。

用于设置 theta 轴网格颜色的属性,指定为 'auto' 或 'manual'。模式值仅影响 theta 轴网格颜色。无论在什么模式下,theta 轴线、刻度线和标签始终使用 ThetaColor 值。
theta 轴网格颜色取决于 ThetaColorMode 属性和 GridColorMode 属性,如下表所示。
| ThetaColorMode | GridColorMode | theta 轴网格颜色 |
|---|---|---|
'auto' | 'auto' | GridColor 属性 |
'manual' | GridColor 属性 | |
'manual' | 'auto' | ThetaColor 属性 |
'manual' | GridColor 属性 |
theta 轴次网格颜色取决于 ThetaColorMode 属性和 MinorGridColorMode 属性,如下表所示。
| ThetaColorMode | MinorGridColorMode | theta 轴次网格颜色 |
|---|---|---|
'auto' | 'auto' | MinorGridColor 属性 |
'manual' | MinorGridColor 属性 | |
'manual' | 'auto' | ThetaColor 属性 |
'manual' | MinorGridColor 属性 |
值沿 r 轴递增的方向,指定为下列值之一:
'normal'- 值从图表中心向外递增。原点处的半径对应于RLim属性中存储的最小值(通常为 0)。'reverse'- 值从图表中心向外递减。原点处的半径对应于RLim属性中存储的最大值。
示例: ax.RDir = 'reverse';
角度递减方向,指定为下表中的值之一。
| 值 | 结果 |
|---|---|
'counterclockwise' | 角度按逆时针方向增加。
|
'clockwise' | 角度按顺时针方向增加。
|
示例: ax.ThetaDir = 'clockwise';
角度值的单位,指定为下列值之一:
'degrees'- 以度为单位标记角,并以度为单位解释ThetaLim、ThetaTick和RAxisLocation属性值。当您将单位从弧度切换为度时,MATLAB 将把这三个属性中的弧度值转换为等价的角度值。'radians'- 以弧度为单位标记角,并以弧度为单位解释ThetaLim、ThetaTick和RAxisLocation属性值。当您将单位从度切换为弧度时,MATLAB 将把这三个属性中的角度值转换为等价的弧度值。
示例: ax.ThetaAxisUnits = 'radians';
网格线
r 轴网格线的显示,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
| 值 | 结果 |
|---|---|
'on' | 显示线条。
|
'off' | 不显示网格线。
|
示例: ax.RGrid = 'off';
theta 轴网格线的显示,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
| 值 | 结果 |
|---|---|
'on' | 显示线条。
|
'off' | 不显示网格线。
|
示例: ax.ThetaGrid = 'off';
网格线和刻度线相对于图形对象的位置,指定为下列值之一:
'bottom'- 在图形对象下方显示刻度线和网格线。'top'- 在图形对象上方显示刻度线和网格线。
此属性仅影响二维视图。
示例: ax.Layer = 'top'
用于网格线的线型,指定为下表中的线型之一。
| 线型 | 描述 | 表示的线条 |
|---|---|---|
"-" | 实线 |
|
"--" | 虚线 |
|
":" | 点线 |
|
"-." | 点划线 |
|
"none" | 无线条 | 无线条 |
要显示网格线,请使用 grid on 命令或将 ThetaGrid 或 RGrid 属性设置为 'on'。
示例: ax.GridLineStyle = '--';
网格线的颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。实际的网格颜色取决于 GridColorMode、ThetaColorMode 和 RColorMode 属性的值。有关详细信息,请参阅 GridColorMode。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]范围内,例如[0.4 0.6 0.7]。十六进制颜色代码是字符串标量或字符向量,以井号 (
#) 开头,后跟三个或六个十六进制数字,范围可以是0到F。这些值不区分大小写。因此,颜色代码"#FF8800"与"#ff8800"、"#F80"与"#f80"是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。
| 颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
示例: ax.GridColor = [0 0 1]
示例: ax.GridColor = 'blue'
示例: ax.GridColor = '#0000FF'
用于设置网格颜色的属性,指定为下列值之一:
'auto'- 检查RColorMode和ThetaColorMode属性的值,以确定 r 和 theta 方向的网格线颜色。'manual'- 使用GridColor设置所有方向的网格线颜色。
网格线透明度,指定为范围 [0,1] 中的值。值为 1 表示不透明,值为 0 表示完全透明。
示例: ax.GridAlpha = 0.5
GridAlpha 属性的选择模式,指定为下列值之一:
'auto'- 使用默认透明度值0.15。'manual'- 手动指定透明度值。要指定值,请设置GridAlpha属性。
示例: ax.GridAlphaMode = 'auto'
r 轴次网格线的显示,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
| 值 | 结果 |
|---|---|
'on' | 显示线条。
|
'off' | 不显示网格线。
|
示例: ax.RMinorGrid = 'on';
theta 轴次网格线的显示,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
| 值 | 结果 |
|---|---|
'on' | 显示线条。
|
'off' | 不显示网格线。
|
示例: ax.ThetaMinorGrid = 'on';
用于次网格线的线型,指定为下表中的线型之一。
| 线型 | 描述 | 表示的线条 |
|---|---|---|
"-" | 实线 |
|
"--" | 虚线 |
|
":" | 点线 |
|
"-." | 点划线 |
|
"none" | 无线条 | 无线条 |
要显示网格线,请使用 grid minor 命令或将 ThetaMinorGrid 或 RMinorGrid 属性设置为 'on'。
示例: ax.MinorGridLineStyle = '-.';
次网格线的颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。实际的网格颜色取决于 MinorGridColorMode、ThetaColorMode 和 RColorMode 属性的值。有关详细信息,请参阅 MinorGridColorMode。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]范围内,例如[0.4 0.6 0.7]。十六进制颜色代码是字符串标量或字符向量,以井号 (
#) 开头,后跟三个或六个十六进制数字,范围可以是0到F。这些值不区分大小写。因此,颜色代码"#FF8800"与"#ff8800"、"#F80"与"#f80"是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。
| 颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
示例: ax.MinorGridColor = [0 0 1]
示例: ax.MinorGridColor = 'blue'
示例: ax.MinorGridColor = '#0000FF'
用于设置次网格颜色的属性,指定为下列值之一:
'auto'- 检查RColorMode和ThetaColorMode属性的值,以确定 r 和 theta 方向的网格线颜色。'manual'- 使用MinorGridColor设置所有方向的网格线颜色。
次网格线透明度,指定为范围 [0,1] 中的值。值为 1 表示不透明,值为 0 表示完全透明。
示例: ax.MinorGridAlpha = 0.5
MinorGridAlpha 属性的选择模式,指定为下列值之一:
'auto'- 使用默认透明度值0.25。'manual'- 手动指定透明度值。要指定值,请设置MinorGridAlpha属性。
示例: ax.MinorGridAlphaMode = 'auto'
标签
坐标区副标题的文本对象。要添加副标题,请设置文本对象的 String 属性。要更改其外观,如字体角度,请设置其他属性。有关完整列表,请参阅 Text 属性。
ax = gca; ax.Subtitle.String = 'An Insightful Subtitle'; ax.Subtitle.FontAngle = 'italic';
也可以使用 subtitle 函数添加副标题并控制外观。
subtitle('An Insightful Subtitle','FontAngle','italic')
或者使用 title 函数,指定两个字符向量输入参量和两个输出参量。然后设置该函数返回的第二个文本对象的属性。
[t,s] = title('Clever Title','An Insightful Subtitle'); s.FontAngle = 'italic';
注意
此文本对象不包含在坐标区的 Children 属性中,它不能由 findobj 返回,也不使用为文本对象定义的默认值。
标题和副标题水平对齐,具有用于外接极坐标区的不可见框,指定为下列值之一:
'center'- 标题和副标题位于极坐标区的居中位置。'left'- 标题和副标题与外接极坐标区的不可见框的左边缘对齐。'right'- 标题和副标题与外接极坐标区的不可见框的右边缘对齐。
此 属性 为只读。
与坐标区关联的图例,指定为图例对象。您可以使用此属性确定坐标区是否有图例。
ax = gca; lgd = ax.Legend if ~isempty(lgd) disp('Legend Exists') end
您还可以使用此属性访问现有图例的属性。有关属性列表,请参阅 Legend 属性。
polarplot(1:10)
legend({'Line 1'},'FontSize',12)
ax = gca;
ax.Legend.TextColor = 'red';多个绘图
色序,指定为由 RGB 三元组组成的三列矩阵。此属性定义 MATLAB 创建绘图对象(例如 Line、Scatter 和 Bar 对象)时使用的颜色的调色板。数组的每一行都是一个 RGB 三元组。RGB 三元组是包含三个元素的向量,其元素分别指定颜色的红、绿、蓝分量的强度。强度必须在 [0, 1] 范围内。下表列出了默认颜色。
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
MATLAB 根据对象的创建顺序为对象分配颜色。例如,在绘制线条时,第一条线用第一种颜色,第二条线用第二种颜色,以此类推。如果线条比颜色多,则循环使用颜色。
在绘图之前或之后更改色序
您可以通过下列任一方式更改色序:
调用
colororder函数以更改图窗中所有坐标区的色序。此函数提供多个预定义的调色板以供选择。调用此函数时,图窗中现有绘图的颜色会立即更新。如果您在图窗中放入其他坐标区,则这些坐标区也会使用新的色序。如果您继续调用绘图命令,这些命令会使用新的颜色。对坐标区设置
ColorOrder属性,调用hold函数以将坐标区保留状态设置为'on',然后调用所需的绘图函数。这类似于调用colororder函数,但在本例中是为特定坐标区设置色序,而不是为整个图窗设置。必须将hold状态设置为'on',从而确保后续绘图命令不会重置坐标区以使用默认色序。
色序索引,指定为正整数。此属性指定当 MATLAB 创建下一个绘图对象(例如 Line、Scatter 或 Bar 对象)时从坐标区 ColorOrder 属性中选择的下一个颜色。
注意
建议设置单个绘图对象的 SeriesIndex 属性,而不要设置坐标区的 ColorOrderIndex 属性。ColorOrderIndex 属性的行为在 R2019b 中已更改。有关详细信息,请参阅ColorOrder 和 LineStyleOrder 的索引方案可能会更改绘图颜色和线型。
线型序列,指定为字符向量、字符向量元胞数组或字符串数组。此属性列出了 MATLAB 在坐标区中显示多个绘图线条时使用的线型。MATLAB 根据创建线条的顺序为它们分配线型。默认情况下,只有在对当前线型用尽 ColorOrder 属性中的所有颜色后,它才会开始使用下一线型。将 LineStyleCyclingMethod 属性设置为 "withcolor" 会同时循环使用两者,设置为 "beforecolor" 会首先循环使用线型。默认的 LineStyleOrder 只有一个线型 "-"。
要自定义线型序列,请创建一个字符向量元胞数组或字符串数组。将数组的每个元素指定为下列各表中的一个线条设定符或标记设定符。您可以在一个元素中组合使用线型和标记设定符,如 "-*"。
| 线型 | 描述 | 表示的线条 |
|---|---|---|
"-" | 实线 |
|
"--" | 虚线 |
|
":" | 点线 |
|
"-." | 点划线 |
|
| 标记 | 描述 | 生成的标记 |
|---|---|---|
"o" | 圆圈 |
|
"+" | 加号 |
|
"*" | 星号 |
|
"." | 点 |
|
"x" | 叉号 |
|
"_" | 水平线条 |
|
"|" | 垂直线条 |
|
"square" | 方形 |
|
"diamond" | 菱形 |
|
"^" | 上三角 |
|
"v" | 下三角 |
|
">" | 右三角 |
|
"<" | 左三角 |
|
"pentagram" | 五角形 |
|
"hexagram" | 六角形 |
|
在绘图之前或之后更改线型序列
您可以在坐标区中绘图之前或之后更改线型序列。当 LineStyleOrder 属性设置为新值时,MATLAB 会更新坐标区中所有线条的线型。如果继续在坐标区中绘图,绘图命令会继续使用更新后的列表中的线型。
自 R2023a 起
当坐标区中有多条线时如何循环使用线型,指定为下表中的值之一。
下表中的示例是使用 ColorOrder 属性中的默认颜色和 LineStyleOrder 属性中的三种线型 (["-","-o","--"]) 创建的。
| 值 | 描述 | 示例 |
|---|---|---|
| 先循环使用 |
|
"beforecolor" | 先循环使用 |
|
"withcolor" | 循环使用 |
|
此 属性 为只读。
添加到坐标区的下一个绘图对象的 SeriesIndex 值,以大于或等于 0 的整数形式返回。当您要跟踪对象如何循环使用颜色和线型时,此属性非常有用。此属性维护坐标区中具有数值 SeriesIndex 属性值的对象的计数。MATLAB 使用它为每个新对象分配 SeriesIndex 值。计数在创建坐标区时从 1 开始,每增加一个对象,计数就会增加 1。因此,该计数通常是 n+1,其中 n 是坐标区中对象的数量。
如果您手动更改 ColorOrderIndex 或坐标区上的 LineStyleOrderIndex 属性,NextSeriesIndex 属性的值将更改为 0。因此,当您更改坐标区上的 ColorOrder 或 LineStyleOrder 属性时,具有 SeriesIndex 属性的对象不再自动更新。
在向坐标区中添加新绘图时要重置的属性,指定为下列值之一:
'add'- 在现有坐标区上添加新绘图。在显示新绘图之前,不删除现有绘图或重置坐标区属性。'replacechildren'- 在显示新绘图之前删除现有绘图。可将ColorOrderIndex和LineStyleOrderIndex属性重置为1,但不要重置其他坐标区属性。添加到坐标区的下一个绘图基于ColorOrder和LineStyle序列属性使用第一个颜色和线型。此值类似于在每个新绘图之前使用cla。'replace'- 在显示新绘图之前,删除现有绘图并将除Position和Units之外的所有坐标区属性重置为默认值。'replaceall'- 在显示新绘图之前,删除现有绘图并将除Position和Units之外的所有坐标区属性重置为默认值。此值类似于在每个新绘图之前使用cla reset。
注意
对于只有一个 y 轴的 Axes 对象,'replace' 和 'replaceall' 属性值是等同的。对于具有两个 y 轴的 Axes 对象,'replace' 值只影响活动侧,而 'replaceall' 值会同时影响两侧。
渲染对象的顺序,指定为下列值之一:
'depth'- 基于当前视图按从后到前的顺序绘制对象。使用此值可确保前方对象得到正确绘制渲染(相对于后方对象)。'childorder'- 按图形函数创建对象的顺序绘制这些对象,而不考虑对象在三个维度中的关系。此值可产生更快的渲染速度,特别是在图窗非常大时,但同时可能导致显示对象的深度排序不恰当。
线型序列索引,指定为正整数。此属性指定 MATLAB 在创建下一个绘图线条时从坐标区 LineStyleOrder 属性中选择的下一个线型。
注意
建议设置单个绘图对象的 SeriesIndex 属性,而不要设置坐标区的 LineStyleOrderIndex 属性。LineStyleOrderIndex 属性的行为在 R2019b 中已更改。有关详细信息,请参阅ColorOrder 和 LineStyleOrder 的索引方案可能会更改绘图颜色和线型。
颜色图和透明度图
颜色图,指定为由 RGB(红色、绿色、蓝色)三元组组成的 m×3 数组,这些三元组定义 m 种单独的颜色。
示例: ax.Colormap = [1 0 1; 0 0 1; 1 1 0] 将颜色图设置为三种颜色:品红色、蓝色和黄色。
MATLAB 按行号访问这些颜色。
也可以使用 colormap 函数更改颜色图。
颜色图的刻度,指定为下列值之一:
'linear'- 线性刻度。颜色栏上的刻度值也使用线性刻度。'log'- 对数刻度。颜色栏上的刻度值也使用对数刻度。
颜色图的颜色范围,指定为 [cmin cmax] 形式的二元素向量。
如果关联的模式属性设置为 'auto',则 MATLAB 将自动选择颜色范围。如果您向该属性分配值,则 MATLAB 会将模式设置为 'manual',且不会自动选择颜色范围。
CLim 属性的选择模式,指定为下列值之一:
'auto'- 根据坐标区包含的图形对象的颜色数据自动选择范围。'manual'- 手动指定值。要指定值,请设置CLim属性。当坐标区子级的范围改变时,这些值不会改变。
透明度图,指定为从 0 到 1 线性递增的有限 alpha 值组成的数组。数组大小可以是 m×1 或 1×m。MATLAB 按 alpha 值在数组中的索引访问来它们。Alphamap 可以为任意长度。
透明度图的刻度,指定为下列值之一:
'linear'- 线性刻度'log'- 对数刻度
alphamap 的 alpha 范围,指定为 [amin amax] 形式的二元素向量。
如果关联的模式属性设置为 'auto',则 MATLAB 将自动选择 alpha 范围。如果您设置该属性,则 MATLAB 将模式设置为 'manual',且不会自动选择 alpha 范围。
ALim 属性的选择模式,指定为下列值之一:
'auto'- 根据坐标区包含的图形对象的AlphaData值自动选择范围。'manual'- 手动指定 alpha 范围。要指定 alpha 范围,请设置ALim属性。
框样式
背景颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]范围内,例如[0.4 0.6 0.7]。十六进制颜色代码是字符串标量或字符向量,以井号 (
#) 开头,后跟三个或六个十六进制数字,范围可以是0到F。这些值不区分大小写。因此,颜色代码"#FF8800"与"#ff8800"、"#F80"与"#f80"是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。
| 颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
示例: ax.Color = 'none'
圆环线和角度线的宽度,指定为标量值(以磅为单位)。一磅等于 1/72 英寸。
示例: ax.LineWidth = 1.5
极坐标区的轮廓,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
当 theta 坐标轴范围不超过 360 度时,这些值之间的差异最明显。
| 值 | 结果 |
|---|---|
'on' | 显示极坐标区的完整轮廓。
|
'off' | 不显示极坐标区的完整轮廓。
|
示例: ax.Box = 'on'
按照极坐标区范围裁剪对象,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
在极坐标区范围内裁剪对象的行为由极坐标区对象的 Clipping 属性和具体对象的 Clipping 属性共同决定。极坐标区的属性值具有以下作用:
'on'- 使极坐标区内的每个对象可基于该对象的Clipping属性值控制其自身的裁剪行为。'off'- 禁用极坐标区内所有对象的裁剪,而不管各个对象的Clipping属性值如何设置。对象的某些部分可能会显示在极坐标区范围之外。例如,如果创建一个绘图,设置hold on命令,冻结轴缩放,然后添加一个大于原始绘图的绘图,则绘图的某些部分可能会显示在范围之外。
下表列出了 Clipping 属性值的不同组合结果。
| 坐标区对象的裁剪属性 | 单个对象的裁剪属性 | 结果 |
|---|---|---|
'on' | 'on' | 裁剪单个对象。其他对象可能会被裁剪,也可能不会。 |
'on' | 'off' | 不裁剪单个对象。其他对象可能会被裁剪,也可能不会。 |
'off' | 'on' | 不裁剪单个对象和其他对象。 |
'off' | 'off' | 不裁剪单个对象和其他对象。 |
即使已启用裁剪,粗线条和标记仍可能显示在极坐标区范围之外。如果绘图包含标记,则只要数据点位于极坐标区内,MATLAB 就会绘制整个标记。
位置
极坐标区的尺寸和位置,包括标签和边距,指定为 [left bottom width height] 形式的四元素向量。此向量定义极坐标区外边界围成的矩形范围。left 和 bottom 元素定义极坐标区所在图窗或 uipanel 的左下角到矩形左下角的距离。width 和 height 元素是矩形维度。
默认情况下,这些值使用归一化的容器单位进行测量。要更改单位,请设置 Units 属性。[0 0 1 1] 的默认值包括容器的整个内部。
注意
当父容器为 TiledChartLayout 对象时,设置此属性不起作用。
内部大小和位置,指定为 [left bottom width height] 形式的四元素向量。此属性等同于 Position 属性。
注意
当查询内部位置时,请考虑使用
tightPosition函数以获得更高的准确度。(从 R2022b 开始)当父容器为
TiledChartLayout时,设置此属性不起作用
极坐标区的尺寸和位置,不包括标签或边距,指定为 [left bottom width height] 形式的四元素向量。此向量定义紧紧围绕极坐标区的矩形边界的范围。left 和 bottom 元素定义容器左下角到矩形左下角的距离。width 和 height 元素是矩形维度。
默认情况下,这些值使用归一化的容器单位进行测量。要更改单位,请设置 Units 属性。
示例: ax.Position = [0 0 1 1]
注意
当查询位置时,请考虑使用
tightPosition函数以获得更高的准确度。(从 R2022b 开始)当父容器为
TiledChartLayout时,设置此属性不起作用
此 属性 为只读。
文本标签的边距,以 [left bottom right top] 形式的四元素向量返回。这些元素定义 Position 属性的边界和极坐标区文本标签及标题的范围之间的距离。默认情况下,这些值使用归一化的图窗或 uipanel(包含极坐标区)单位进行测量。要更改单位,请设置 Units 属性。
Position 属性和 TightInset 属性定义包围极坐标区及其标签和标题的最紧凑边界框。
在增加、删除或更改装饰元素时保持不变的位置属性,指定为下列值之一:
"outerposition"- 在添加、删除或更改装饰元素(例如标题或轴标签)时,OuterPosition属性保持不变。如需任何位置调整,MATLAB 会调整InnerPosition属性。"innerposition"- 在添加、删除或更改装饰元素(例如标题或轴标签)时,InnerPosition属性保持不变。如需任何位置调整,MATLAB 会调整OuterPosition属性。
注意
当父容器为 TiledChartLayout 对象时,设置此属性不起作用。
位置单位,指定为下列值之一:
Units | 描述 |
|---|---|
"normalized"(默认值) | 根据容器进行归一化,容器通常是图窗或面板。容器的左下角映射到 (0,0),右上角映射到 (1,1)。 |
"inches" | 英寸。 |
"centimeters" | 厘米。 |
"characters" | 基于图形根对象的默认 uicontrol 字体:
|
"points" | 字体磅数。一磅等于 1/72 英寸。 |
"pixels" | 像素。 在 Windows 和 Macintosh 系统上,像素的大小为 1/96 英寸。此大小与系统分辨率无关。 在 Linux 系统上,一个像素的大小由系统分辨率确定。 |
在对象创建过程中将单位指定为 Name,Value 对组时,您必须先设置 Units 属性,然后再指定要使用这些单位的属性(如 Position)。
布局选项,指定为 TiledChartLayoutOptions 或 GridLayoutOptions 对象。当坐标区对象位于分块图布局或网格布局中时,此属性非常有用。
要在分块图布局的网格中定位坐标区,请设置 TiledChartLayoutOptions 对象的 Tile 和 TileSpan 属性。例如,假设有一个 3×3 分块图布局。布局的中心有一个包含若干图块的网格,外边缘四周各有一个图块。实际上,该网格不可见,外侧图块也不占用空间,除非您用坐标区或图填充它们。

以下代码将坐标区 ax 放置在网格的第三个图块中。
ax.Layout.Tile = 3;
要使坐标区占据多个图块,请将 TileSpan 属性指定为二元素向量。例如,此坐标区占据了 2 行和 3 列的图块。
ax.Layout.TileSpan = [2 3];
要将坐标区放置在四周的某个图块中,请将 Tile 属性指定为 'north'、'south'、'east' 或 'west'。例如,将值设置为 'east' 会将坐标区放置在网格右侧的图块中。
ax.Layout.Tile = 'east';要将坐标区放入 App 内的布局中,请将此属性指定为 GridLayoutOptions 对象。有关在 App 中使用网格布局的详细信息,请参阅 uigridlayout。
如果此坐标区不是分块图布局或网格布局的子级(例如,如果它是图窗或面板的子级),则此属性为空且不起作用。
交互性
自 R2024a 起
自定义交互行为的选项,指定为 PolarAxesInteractionOptions 对象。使用 PolarAxesInteractionOptions 对象的属性自定义与极坐标区的交互行为。有关完整的属性列表,请参阅 PolarAxesInteractionOptions Properties。
PolarAxesInteractionOptions 对象设置的选项适用于相关联的极坐标区上的以下交互:
由极坐标区的
Interactions属性指定的内置交互通过使用模式函数(例如
datacursormode)启用的交互使用极坐标区工具栏启用的交互
示例: pax.InteractionOptions.DatatipsPlacementMethod = "interpolate" 允许将数据提示放置在图上数据点之间的位置。
数据探索工具栏,它是一个 AxesToolbar 对象。将鼠标悬停在坐标区上时,工具栏会显示在坐标区的右上角,并包含用于导出和数据提示的选项。
您可以使用 axtoolbar 和 axtoolbarbtn 函数自定义工具栏按钮。
如果您不希望在将鼠标悬停在坐标区上时显示工具栏,请将 AxesToolbar 对象的 Visible 属性设置为 'off'。
ax = gca;
ax.Toolbar.Visible = 'off';有关详细信息,请参阅 AxesToolbar 属性。
交互,指定为 DataTipInteraction 对象或空数组。当此属性的值为 DataTipInteraction 对象时,您无需选择任何坐标区工具栏按钮就可在图中显示数据提示。
要从坐标区中删除所有交互,请将此属性设置为空数组。要暂时禁用当前交互集,请调用 disableDefaultInteractivity 函数。您可以通过调用 enableDefaultInteractivity 函数来重新启用它们。
有关图交互的详细信息,请参阅对图的交互进行控制。
可见性状态,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
'on'- 显示坐标区及其子级。'off'- 隐藏坐标区而不删除它。您仍然可以访问不可见坐标区对象的属性。
注意
当 Visible 属性为 'off' 时,坐标区对象不可见,但线条等子对象仍然可见。
此 属性 为只读。
鼠标指针的位置,以 [th r] 形式的二元素向量形式返回。向量的元素指示坐标区内最后一次点击的位置。th 是以弧度表示的 theta 角,r 是半径值。每个值所属的范围如下:
theta 角在范围
[tmin, tmin+2*pi]内,其中tmin是极坐标区的ThetaLim向量的第一个值。角度是在ThetaDir属性指定的方向上从零角度位置开始测量的。零角度的位置由ThetaZeroLocation属性指定。默认情况下,零角度从坐标区右侧开始,方向为逆时针方向。半径值大于或等于
rmin,其中rmin是极坐标区的RLim向量中的第一个值。
如果图窗定义了 WindowButtonMotionFcn 回调,则该值指示指针最后所在的位置。图窗还有一个 CurrentPoint 属性。
上下文菜单,指定为 ContextMenu 对象。使用此属性在您右键点击对象时显示上下文菜单。使用 uicontextmenu 函数创建上下文菜单。
注意
如果 PickableParts 属性设置为 'none' 或者 HitTest 属性设置为 'off',该上下文菜单将不显示。
选择状态,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
'on'- 已选择。如果您在绘图编辑模式下点击对象,则 MATLAB 会将其Selected属性设置为'on'。如果SelectionHighlight属性也设置为'on',则 MATLAB 将在对象周围显示选择句柄。'off'- 未选择。
选择时显示选择句柄,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
'on'- 在Selected属性设置为'on'时显示选择句柄。'off'- 永远不显示选择句柄,即使Selected属性设置为'on'也是如此。
回调
鼠标点击回调,指定为下列值之一:
函数句柄
元胞数组,包含一个函数句柄和其他参量
作为有效 MATLAB 命令或函数(在基础工作区中计算)的字符向量(不推荐)
使用此属性在您点击对象时执行代码。如果使用函数句柄指定此属性,则 MATLAB 在执行回调时将向回调函数传递两个参量:
点击的对象 - 从回调函数中访问点击的对象的属性。
事件数据 - 空参量。在函数定义中将其替换为波浪号字符 (
~) 以指示不使用此参量。
有关如何使用函数句柄定义回调函数的详细信息,请参阅Create Callbacks for Graphics Objects。
注意
如果 PickableParts 属性设置为 'none' 或者 HitTest 属性设置为 'off',则不执行此回调。
对象创建函数,指定为下列值之一:
函数句柄。
第一个元素是函数句柄的元胞数组。元胞数组中的后续元素是传递到回调函数的参量。
包含有效 MATLAB 表达式的字符向量(不推荐)。MATLAB 在基础工作区计算此表达式。
有关将回调指定为函数句柄、元胞数组或字符向量的详细信息,请参阅Create Callbacks for Graphics Objects。
此属性指定要在 MATLAB 创建对象时执行的回调函数。MATLAB 将在执行 CreateFcn 回调之前初始化所有属性值。如果不指定 CreateFcn 属性,则 MATLAB 执行默认的创建函数。
对现有组件设置 CreateFcn 属性没有任何作用。
如果将此属性指定为函数句柄或元胞数组,则可以使用回调函数的第一个参量访问正在创建的对象。否则,使用 gcbo 函数访问该对象。
对象删除函数,指定为下列值之一:
函数句柄。
第一个元素是函数句柄的元胞数组。元胞数组中的后续元素是传递到回调函数的参量。
包含有效 MATLAB 表达式的字符向量(不推荐)。MATLAB 在基础工作区计算此表达式。
有关将回调指定为函数句柄、元胞数组或字符向量的详细信息,请参阅Create Callbacks for Graphics Objects。
此属性指定在 MATLAB 删除对象时要执行的回调函数。MATLAB 在销毁对象的属性之前执行 DeleteFcn 回调。如果不指定 DeleteFcn 属性,则 MATLAB 执行默认的删除函数。
如果将此属性指定为函数句柄或元胞数组,则可以使用回调函数的第一个参量访问要删除的对象。否则,使用 gcbo 函数访问该对象。
回调执行控件
回调中断,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
此属性确定是否可以中断运行中回调。有以下两种回调状态要考虑:
运行中回调是当前正在执行的回调。
中断回调是试图中断运行中回调的回调。
每次执行处理回调队列的命令时,MATLAB 都会确定回调中断行为。这些命令包括 drawnow、figure、uifigure、getframe、waitfor 和 pause。
如果运行中回调不包含上述命令之一,则不会发生中断。MATLAB 首先完成执行运行中回调,然后执行中断回调。
如果运行中回调确实包含上述命令之一,则由运行中回调所属对象的 Interruptible 属性来确定是否发生中断:
如果
Interruptible的值为'off',则不会发生中断。此时,由中断回调所属对象的BusyAction属性确定中断回调是被丢弃还是添加到回调队列中。如果
Interruptible的值为'on',则发生中断。下次 MATLAB 处理回调队列时,它会停止运行中回调的执行,并执行中断回调。在中断回调完成后,MATLAB 将继续执行运行中回调。
注意
回调的中断和执行在以下情况下会有不同的表现:
如果中断回调是
DeleteFcn、CloseRequestFcn或SizeChangedFcn回调,则无论是否存在Interruptible属性值都会发生中断。如果运行中回调当前正在执行
waitfor函数,则无论是否存在Interruptible属性值都会发生中断。如果中断回调由
Timer对象所有,则回调将根据调度执行,而不考虑Interruptible属性值。
回调排队,指定为 'queue' 或 'cancel'。BusyAction 属性决定 MATLAB 如何处理中断回调的执行。有以下两种回调状态要考虑:
运行中回调是当前正在执行的回调。
中断回调是试图中断运行中回调的回调。
BusyAction 属性仅在同时满足以下两个条件时才确定回调排队行为:
在这些情况下,由中断回调所属对象的 BusyAction 属性确定 MATLAB 如何处理中断回调。以下是 BusyAction 属性的可能值:
'queue'- 将中断回调放入队列中,以便在运行中回调执行完毕后进行处理。'cancel'- 不执行中断回调。
捕获鼠标点击的能力,指定为以下值之一:
'visible'- 仅当对象可见时才捕获鼠标点击。Visible属性必须设置为'on'。HitTest属性决定是PolarAxes对象响应点击还是前代响应点击。'all'- 无论是否可见都捕获鼠标点击。Visible属性可以设置为'on'或'off'。HitTest属性决定是PolarAxes对象响应点击还是前代响应点击。'none'- 无法捕获鼠标点击。点击PolarAxes对象会将点击操作传递给图窗窗口的当前视图中该对象下面的对象,通常是坐标区或图窗。HitTest属性没有任何作用。
如果希望某个对象在其位于其他不需要点击的对象下方时可点击,请将其他对象的 PickableParts 属性设置为 'none' 以使点击穿过它们。
对捕获的鼠标点击的响应,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true,'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。
'on'- 触发PolarAxes对象的ButtonDownFcn回调。如果您已定义ContextMenu属性,则调用上下文菜单。'off'- 触发满足以下条件之一的PolarAxes对象的最近前代的回调:HitTest属性设置为'on'。PickableParts属性设置为允许前代捕获鼠标点击的值。
注意
PickableParts 属性决定 PolarAxes 对象是否可以捕获鼠标点击。如果无法捕获,则 HitTest 属性没有任何作用。
此 属性 为只读。
删除状态,以 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值形式返回。
当 DeleteFcn 回调开始执行时,MATLAB 会将 BeingDeleted 属性设置为 'on'。BeingDeleted 属性将一直保持 'on' 设置状态,直到组件对象不再存在为止。
在查询或修改对象之前,请先检查其 BeingDeleted 属性的值,以确认它不是待删除项。
父级/子级
父容器,指定为 Figure、Panel、Tab、TiledChartLayout 或 GridLayout 对象。
子级,以图形对象数组形式返回。使用该属性可查看子级列表,或重新排列子级顺序(通过将该属性设置为自身的置换来完成)。
不能使用 Children 属性添加或删除子级。要向此列表中添加子级,请将子图形对象的 Parent 属性设置为 PolarAxes 对象。
父级的 Children 属性中对象句柄的可见性,指定为下列值之一:
"on"- 对象句柄始终可见。"off"- 对象句柄始终不可见。该选项用于防止另一函数无意中对其进行更改。将HandleVisibility设置为"off"可在执行该函数时暂时隐藏句柄。"callback"- 对象句柄在回调或回调所调用的函数中可见,但在从命令行调用的函数中不可见。此选项阻止通过命令行访问对象,但允许回调函数访问对象。
如果父级的 Children 属性中未列出该对象,则通过搜索对象层次结构或查询句柄属性获取对象句柄的函数无法返回该对象。此类函数的示例包括 get、findobj、gca、gcf、gco、newplot、cla、clf 和 close 函数。
隐藏的对象句柄仍有效。将根 ShowHiddenHandles 属性设置为 "on" 以列出所有对象句柄,而不管其 HandleVisibility 属性设置如何。
标识符
此 属性 为只读。
图形对象的类型,以 'polaraxes' 形式返回。
对象标识符,指定为字符向量或字符串标量。您可以指定唯一的 Tag 值作为对象的标识符。如果需要访问您代码中其他位置的对象,可以使用 findobj 函数基于 Tag 值搜索对象。
用户数据,指定为任何 MATLAB 数组。例如,您可以指定标量、向量、矩阵、元胞数组、字符数组、表或结构体。使用此属性存储对象上的任意数据。
如果您在 App 设计工具中工作,请在该 App 中创建公共或私有属性以共享数据,而不是使用 UserData 属性。有关详细信息,请参阅在用 App 设计工具创建的 App 内共享数据。
版本历史记录
在 R2006a 之前推出浅色主题中的默认 ColorOrder、RColor 和 ThetaColor 属性值略有更改。下表列出了这些更改。
| 属性 | R2024b 颜色 | R2025a 颜色 | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
| ||||||||||||||||||||||||||||||||
RColor 和 ThetaColor |
|
|
通过将 ThetaZeroAxisLocaton 属性设置为诸如 45(当 ThetaAxisUnits 属性为 "degrees" 时)或 pi/4(当 ThetaAxisUnits 属性为 "radians" 时)等值,将零度的位置指定为角度值。
现有选项 "right"、"left"、"top" 和 "bottom" 也受支持。
FontSmoothing 属性不起作用,将在以后的版本中删除。您可以设置或获取此属性的值而不发出警告,但无论属性值如何,所有文本都是平滑的。此属性删除已在 R2022a 中声明。
对于在 App 设计工具中或在使用 uifigure 函数创建的图窗中创建的 polaraxes 对象,您可以自定义坐标区交互的行为。使用 InteractionOptions 属性自定义数据提示的行为。
使用 LineStyleCyclingMethod 属性控制如何在坐标区中区分不同的线条。
现在,您可以通过设置 RTickLabelRotationMode 属性来控制 r 轴刻度标签旋转的选择模式。
通过将 TickDir 属性设置为 "none" 可删除坐标区上的所有刻度线。
通过将坐标区的 TitleHorizontalAlignment 属性设置为 "left"、"right" 或 "center",可以控制绘图标题的对齐方式。
通过设置 Subtitle 属性或调用 subtitle 函数向绘图添加副标题。要控制副标题的外观,请设置 SubtitleFontWeight 属性。
设置 PolarAxes 对象的 PositionConstraint 属性,以便在添加或修改标题和轴标签等装饰元素时控制坐标区周围的空间。
不推荐设置或获取 ActivePositionProperty。请改用 PositionConstraint 属性。
目前没有删除 ActivePositionProperty 的计划,但当您对坐标区调用 set、get 或 properties 函数时,该属性不再列出。
要更新代码,请进行以下更改:
将
ActivePositionProperty的所有实例替换为PositionConstraint。将所有对
'position'选项的引用替换为'innerposition'选项。
不推荐设置或获取 UIContextMenu 属性。请改为使用 ContextMenu 属性,该属性接受相同类型的输入,其行为方式与 UIContextMenu 属性相同。
没有删除 UIContextMenu 属性的计划,但当您对 PolarAxes 对象调用 set、get 或 properties 函数时,该属性不再列出。
使用 Layout 属性在分块图布局中定位 PolarAxes 对象。
如果在坐标区中绘图之后更改坐标区的 ColorOrder 或 LineStyleOrder 属性,绘图中的颜色和线型会立即更新。在 R2019a 和以前的版本中,新的颜色和线型仅影响后续绘图,而不影响现有绘图。
为保留原始行为,请在更改 ColorOrder 或 LineStyleOrder 属性之前将坐标区 ColorOrderIndex 或 LineStyleOrderIndex 属性设置为任意值(例如设置为当前值)。
您可以使用新的索引方案设置 ColorOrder 或 LineStyleOrder 属性,从而更改现有绘图的颜色和线型。MATLAB 将此索引方案应用于具有 ColorMode、FaceColorMode、MarkerFaceColorMode 或 CDataMode 的所有对象。因此,您的代码生成的绘图循环使用的颜色和线型可能与在以前的版本中不同。
在 R2019a 及更早版本中,MATLAB 使用不同的索引方案,该索引方案不允许更改现有绘图的颜色。
为保留绘图循环使用颜色和线型的方式,请在坐标区中绘图之前将坐标区 ColorOrderIndex 或 LineStyleOrderIndex 属性设置为任意值(例如设置为当前值)。
通过设置坐标区的 Interactions 属性,可以创建一组自定义的图交互。这些交互内置于坐标区中,无需选择坐标区工具栏中的任何按钮即可使用。根据坐标区的内容,某些类型的交互默认处于启用状态。
使用 Toolbar 属性将工具栏添加到坐标区的右上角,以便快速访问数据探索工具。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- 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)















































![Polar axes with the ThetaLim property set to [45 315], which produces a partial circle. Border lines display along the edges at theta= 45 and theta=315.](box_polaraxes_on.png)
![Polar axes with the ThetaLim property set to [45 315], which produces a partial circle. There are no border lines along the edges at theta= 45 and theta=315.](box_polaraxes_off.png)













