MATLAB文本注释及特殊符号的表示
text
语法
text(x,y,txt)
text(x,y,z,txt)
text(___,Name,Value)
text(ax,___)
t = text(___)
说明
text(___,
使用一个或多个名称-值对组指定 Name,Value
)Text
对象的属性。例如,'FontSize',14
将字体大小设置为 14 磅。您可以使用上述语法中的任意输入参数组合指定文本属性。如果您将 Position
和 String
属性指定为名称-值对组,则不需要指定 x
、y
、z
和 txt
输入。
text(
在由 ax
,___)ax
指定的坐标区中,而不是在当前坐标区 (gca
) 中创建文本。选项 ax
可以位于前面的语法中的任何输入参数组合之前。
示例
向数据点添加文本说明
绘制一条正弦曲线。在点 处,添加文本说明 。使用 TeX 标记 \pi
表示希腊字母 。使用 \leftarrow
显示一个向左箭头。
x = 0:pi/20:2*pi; y = sin(x); plot(x,y) text(pi,0,'\leftarrow sin(\pi)')
有关希腊字母和其他 TeX 标记的列表,请参阅 Interpreter
属性说明。
向多个数据点添加文本
绘制一个线条。将相同的文本添加到沿该线条的两个点。
x = linspace(-5,5); y = x.^3-12*x; plot(x,y) xt = [-2 2]; yt = [16 -16]; str = 'dy/dx = 0'; text(xt,yt,str)
通过将 str
指定为元胞数组,向每个点添加不同文本。
x = linspace(-5,5); y = x.^3-12*x; plot(x,y) xt = [-2 2]; yt = [16 -16]; str = {'local max','local min'}; text(xt,yt,str)
显示多行文本
创建一个线图,并向坐标区添加一个文本说明。通过将 str
指定为元胞数组显示多行文本。
plot(1:10) str = {'A simple plot','from 1 to 10'}; text(2,7,str)
创建一个线图,并向坐标区添加两个文本说明。在向坐标区添加多个文本说明时,通过指定嵌套元胞数组显示多行文本。
plot(1:10) str = {{'A simple plot','from 1 to 10'},'y = x'}; text([2 8],[7 7],str)
指定文本大小和颜色
创建一个线图,并向坐标区添加文本说明。使用红色 14 号字体。
plot(1:10) text(2,8,'A Simple Plot','Color','red','FontSize',14)
修改现有文本
创建一个线图,并沿线条添加两个文本说明。返回文本对象 t
。
x = linspace(-5,5); y = x.^3-12*x; plot(x,y) t = text([-2 2],[16 -16],'dy/dx = 0')
t = 2x1 Text array: Text (dy/dx = 0) Text (dy/dx = 0)
text
函数为每个文本说明创建一个文本对象。因此,t
包含两个文本对象。
使用 t(1)
更改第一个文本对象的颜色和字体大小。从 R2014b 开始,您可以使用圆点表示法设置属性。如果您使用的是早期版本,请改用 set
函数。
t(1).Color = 'red'; t(1).FontSize = 14;
输入参数
x
- 沿 x 轴的文本放置
标量 | 向量
沿 x 轴的文本放置,以下列形式之一指定:
-
标量 - 将文本添加到单个点。
-
向量 - 将文本添加到多个点。
x
和 y
的大小必须相同。默认单位是数据单位。要更改单位,请设置 Text
对象的 Units
属性。
若要控制相对于指定点的文本放置,请使用 Text
对象的 HorizontalAlignment
、VerticalAlignment
和 Extent
属性。
数据类型: double
| categorical
| datetime
| duration
y
- 沿 y 轴的文本放置
标量 | 向量
沿 y 轴的文本放置,以下列形式之一指定:
-
标量 - 将文本添加到单个点。
-
向量 - 将文本添加到多个点。
x
和 y
的大小必须相同。默认单位是数据单位。要更改单位,请设置 Text
对象的 Units
属性。
若要控制相对于指定点的文本放置,请使用 Text
对象的 HorizontalAlignment
、VerticalAlignment
和 Extent
属性。
数据类型: double
| categorical
| datetime
| duration
z
- 沿 z 轴的文本放置
0 (默认) | 标量 | 向量
沿 z 轴的文本放置,以下列形式之一指定:
-
标量 - 将文本添加到单个点。
-
向量 - 将文本添加到多个点。
x
、y
和 z
的大小必须相同。默认单位是数据单位。要更改单位,请设置 Text
对象的 Units
属性。
数据类型: double
| categorical
| datetime
| duration
txt
- 要显示的文本
字符向量 | 字符串 | 字符数组 | 字符串数组 | 元胞数组
要显示的文本,指定为字符向量、字符串、字符数组、字符串数组或元胞数组。
用于单个数据点的文本
要为单个点添加文本,请将 txt
指定为字符向量或字符串。例如,text(.5,.5,'my text')
。
对于多行文本,请:
-
使用元胞数组,其中每个元胞包含一行文本。例如,
text(.5,.5,{'first','second'})
。 -
使用字符串数组,其中每个元素是一行文本。例如,
text(.5,.5,["first","second"])
。 -
使用具有多个行的字符数组,其中每一行包含相同数量的字符。例如,
text(.5,.5,['first '; 'second'])
。 -
使用
sprintf
创建一个换行符。例如,text(.5,.5,sprintf('first \nsecond'))
。
用于多个数据点的文本
要在每个位置显示相同的文本,请将 txt
指定为字符向量或字符串。例如,text([0 1],[0 1],'my text')
。
要在每个位置显示不同文本,请使用元胞数组。例如,text([0 1],[0 1],{'first','second'})
。
对于多行文本,请使用嵌套元胞数组。例如,text([0 1],[0 1],{{'first','new line'},'second'})
。
希腊字母、特殊字符和数值变量
要包括特殊字符(例如上标、下标、希腊字母或数学符号),请使用 TeX 标记。有关支持的标记的列表,请参阅 Interpreter
属性。
要在文本中包含数值变量,请使用 num2str
函数。
v = 42; txt = ['The value is ',num2str(v)];
ax
- 目标坐标区
Axes
对象 | PolarAxes
对象
目标坐标区,指定为 Axes
对象或 PolarAxes
对象。如果您不指定坐标区,则 text
使用当前坐标区。
名称-值对组参数
指定可选的、以逗号分隔的 Name,Value
对组参数。Name
为参数名称,Value
为对应的值。Name
必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN
所示。
text(.5,.5,'my text','FontSize',14,'Color','red')
此处所列的属性只是一部分。有关完整列表,请参阅 Text 属性。
'FontSize'
- 字体大小
大于 0 的标量值
字体大小,指定为大于 0 的标量值(以磅为单位)。默认字体大小取决于具体操作系统和区域设置。一磅等于 1/72
英寸。要更改字体单位,请使用 FontUnits
属性。
示例: 12
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
'FontWeight'
- 字符粗细
'normal'
(默认) | 'bold'
字符粗细,指定为 'normal'
或 'bold'
。
MATLAB® 使用 FontWeight
属性从系统提供的字体中选择一种字体。并非所有字体都有加粗字体。因此,指定加粗字体仍可能得到普通字体。
'FontName'
- 字体名称
支持的字体名称 | 'FixedWidth'
字体名称,指定为支持的字体名称或 'FixedWidth'
。要正确显示和打印文本,您必须选择系统支持的字体。默认字体取决于您的操作系统和区域设置。
要使用在任何区域设置中都有较好显示效果的等宽字体,请使用 'FixedWidth'
。等宽字体依赖于根 FixedWidthFontName
属性。设置根 FixedWidthFontName
属性会导致立即更新显示方式以使用新字体。
'Color'
- 文本颜色
[0 0 0]
(默认) | RGB 三元组 | 'r'
| 'g'
| 'b'
| ...
文本颜色,指定为 RGB 三元组或表中列出的颜色选项之一。默认值 [0 0 0]
对应于黑色。
如果想自定义颜色,请指定一个 RGB 三元组。RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1]
范围内,例如 [0.4 0.6 0.7]
。此外,还可以按名称指定一些常见的颜色。下表列出长和短颜色名称选项以及对应的 RGB 三元组值。
选项 | 说明 | 对应的 RGB 三元组 |
---|---|---|
'red' 或 'r' |
红色 | [1 0 0] |
'green' 或 'g' |
绿色 | [0 1 0] |
'blue' 或 'b' |
蓝色 | [0 0 1] |
'yellow' 或 'y' |
黄色 | [1 1 0] |
'magenta' 或 'm' |
品红色 | [1 0 1] |
'cyan' 或 'c' |
青蓝色 | [0 1 1] |
'white' 或 'w' |
白色 | [1 1 1] |
'black' 或 'k' |
黑色 | [0 0 0] |
'none' |
无颜色 | 不适用 |
示例: 'blue'
示例: [0 0 1]
'HorizontalAlignment'
- 相对于位置点水平对齐文本
'left'
(默认) | 'center'
| 'right'
相对于 Position
属性中的 x
值水平对齐文本,指定为此表中的一个值。垂直线指示 x
值相对于文本的位置。
值 | 结果 |
---|---|
'left' (默认值) |
|
'center' |
|
'right' |
|
'Position'
- 文本位置
[0 0 0]
(默认) | [x y]
格式的二元素向量 | [x y z]
格式的三元素向量
'Units'
- 位置和范围单位
'data'
(默认) | 'normalized'
| 'inches'
| 'centimeters'
| 'characters'
| 'points'
| 'pixels'
位置单位,指定为此表中的一个值。
单位 | 说明 |
---|---|
'data' (默认值) |
数据坐标。 |
'normalized' |
针对坐标区进行归一化。坐标区的左下角映射到 (0,0) ,右上角映射到 (1,1) 。 |
'inches' |
英寸。 |
'centimeters' |
厘米。 |
'characters' |
基于默认系统字体的字符大小。
|
'points' |
磅。一磅等于 1/72 英寸。 |
'pixels' |
像素。 从 R2015b 开始,以像素为单位的距离不再依赖 Windows® 和 Macintosh 系统上的系统分辨率:
在 Linux® 系统上,一个像素的大小由系统分辨率确定。 |
所有单位('data'
除外)都是从坐标区的左下角进行测量的。此属性会影响 Position
和 Extent
属性。
如果您在创建 Text
对象时以 Name,Value
对组的形式指定 Position
和 Units
属性,则指定顺序很重要。若要使用特定单位定义位置,请在设置 Position
属性之前先设置 Units
属性。
'Interpreter'
- 文本字符的解释
'tex'
(默认) | 'latex'
| 'none'
文本字符的解释,指定为下列值之一:
-
'tex'
- 使用 TeX 标记子集解释字符。 -
'latex'
- 使用 LaTeX 标记解释字符。 -
'none'
- 显示字面字符。
TeX 标记
默认情况下,MATLAB 支持一部分 TeX 标记。使用 TeX 标记可添加下标和上标,修改字体类型和颜色,并在文本中包括特殊字符。
修饰符会一直作用到文本结尾,但上标和下标除外,因为它们仅修饰下一个字符或花括号中的字符。当您将 Interpreter
属性设置为 'tex'
时,支持的修饰符如下所示。
修饰符 | 说明 | 示例 |
---|---|---|
^{ } |
上标 | 'text^{superscript}' |
_{ } |
下标 | 'text_{subscript}' |
\bf |
粗体 | '\bf text' |
\it |
斜体 | '\it text' |
\sl |
伪斜体(通常与斜体相同) | '\sl text' |
\rm |
常规字体 | '\rm text' |
\fontname{ |
字体名称 - 将 specifier 替换为字体系列的名称。您可以将此说明符与其他修饰符结合使用。 |
'\fontname{Courier} text' |
\fontsize{ |
字体大小 - 将 specifier 替换为以磅为单位的数值标量值。 |
'\fontsize{15} text' |
\color{ |
字体颜色 - 将 specifier 替换为以下颜色之一:red 、green 、yellow 、magenta 、blue 、black 、white 、gray 、darkGreen 、orange 或 lightBlue 。 |
'\color{magenta} text' |
\color[rgb]{specifier} |
自定义字体颜色 - 将 specifier 替换为三元素 RGB 三元组。 |
'\color[rgb]{0,0.5,0.5} text' |
下表列出了当 Interpreter
属性设置为 'tex'
时支持的特殊字符。
字符序列 | 符号 | 字符序列 | 符号 | 字符序列 | 符号 |
---|---|---|---|---|---|
|
α |
|
υ |
|
~ |
|
∠ |
|
|
|
≤ |
|
|
|
χ |
|
∞ |
|
β |
|
ψ |
|
♣ |
|
γ |
|
ω |
|
♦ |
|
δ |
|
Γ |
|
♥ |
|
ϵ |
|
Δ |
|
♠ |
|
ζ |
|
Θ |
|
↔ |
|
η |
|
Λ |
|
← |
|
θ |
|
Ξ |
|
⇐ |
|
ϑ |
|
Π |
|
↑ |
|
ι |
|
Σ |
|
→ |
|
κ |
|
ϒ |
|
⇒ |
|
λ |
|
Φ |
|
↓ |
|
µ |
|
Ψ |
|
º |
|
ν |
|
Ω |
|
± |
|
ξ |
|
∀ |
|
≥ |
|
π |
|
∃ |
|
∝ |
|
ρ |
|
∍ |
|
∂ |
|
σ |
|
≅ |
|
• |
|
ς |
|
≈ |
|
÷ |
|
τ |
|
ℜ |
|
≠ |
|
≡ |
|
⊕ |
|
ℵ |
|
ℑ |
|
∪ |
|
℘ |
|
⊗ |
|
⊆ |
|
∅ |
|
∩ |
|
∈ |
|
⊇ |
|
⊃ |
|
⌈ |
|
⊂ |
|
∫ |
|
· |
|
ο |
|
⌋ |
|
¬ |
|
∇ |
|
⌊ |
|
x |
|
... |
|
⊥ |
|
√ |
|
´ |
|
∧ |
|
ϖ |
|
∅ |
|
⌉ |
|
〉 |
|
| |
|
∨ |
|
〈 |
|
© |
LaTeX 标记
要使用 LaTeX 标记,请将 Interpreter
属性设置为 'latex'
。使用美元符号将文本括起来,例如,对于内联模式,使用 '$\int_1^{20} x^2 dx$'
;对于显示模式,使用 '$$\int_1^{20} x^2 dx$$'
。
显示的文本将使用默认的 LaTeX 字体样式。FontName
、FontWeight
和 FontAngle
属性不起任何作用。要更改字体样式,请使用 LaTeX 标记。
用于 LaTeX 解释器的文本最多可以包含 1200 个字符。对于多行文本,请在此数量的基础上每行减少约 10 个字符。
有关 LaTeX 系统的详细信息,请访问 LaTeX Project 网站:https://www.latex-project.org/。
提示
-
默认情况下,文本对象的
Clipping
属性设置为'off'
,这样文本可能显示在坐标区之外。若要裁剪文本使其在坐标区边界内,请将该属性设置为'on'
。