MATLAB text()函数的用法(附带实例)
在 MATLAB 中,要给绘制的图形添加详细的标注,可以借助 text() 函数实现。
text() 函数的调用格式及说明如下表所示。
text() 函数中的“\rightarrow”是 TeX 字符串。在 MATLAB 中,TeX 中的一些希腊字母、常用数学符号、二元运算符号、关系符号以及箭头符号都可以直接使用。
【实例】绘制函数图形 y=x^3+e^x 并标注。

图 1 绘制函数图形并标注
text() 函数的调用格式及说明如下表所示。
调用格式 | 说 明 |
---|---|
text(x,y,'string') | 在图形中指定的位置 (x,y) 上显示字符串 string |
text(x,y,z,'string') | 在三维图形空间中的指定位置 (x,y,z) 上显示字符串 string |
text(x,y,z,'string','PropertyName', PropertyValue,...) | 在三维图形空间中的指定位置 (x,y,z)上显示字符串 string,且对指定的属性进行设置,文字属性名、含义及属性值的有效值与默认值见表 2 |
text(ax,...) | 在 ax 指定的坐标区中创建文本标注 |
t = text(...) | 返回一个或多个文本对象 t,使用 t 可以修改创建的文本对象的属性 |
属性名 | 含 义 | 有效值 | 默认值 |
---|---|---|---|
Editing | 能否对文字进行编辑 | on, off | off |
Interpretation | tex 字符是否可用 | tex, none | tex |
Extent | text 对象的范围(位置与大小) | [left,bottom, width, height] | 随机 |
HorizontalAlignment | 文字水平方向的对齐方式 | left, center, right | left |
Position | 文字范围的位置 | [x,y,z] 直角坐标系 | [](空矩阵) |
Rotation | 文字对象的方位角度 | 标量[单位为度(°)] | 0 |
Units | 文字范围与位置的单位 | pixels(屏幕上的像素点)、normalized(把屏幕看成一个长、宽分别为 1 的矩形)、data、inches、centimeters、points | data |
VerticalAlignment | 文字垂直方向的对齐方式 | normal(正常字体)、italic(斜体字)、oblique(斜角字)、top(文本外框顶上对齐)、cap(文本字符顶上对齐)、middle(文本外框中间对齐)、baseline(文本字符底线对齐)、bottom(文本外框底线对齐) | middle |
FontAngle | 设置斜体文字模式 | normal(正常字体)、italic(斜体字)、oblique(斜角字) | normal |
FontName | 设置文字字体名称 | 用户系统支持的字体名或者字符串 FixedWidth | Helvetica |
FontSize | 设置文字字体大小 | 结合字体单位的数值 | 10 points |
FontUnits | 设置属性 FontSize 的单位 | points(1 points=1/72inches)、normalized(把父对象坐标轴作为单位长的一整个体,当改变坐标轴的尺寸时,系统会自动改变字体的大小)、inches、centimeters、pixels | points |
FontWeight | 设置文字字体的粗细 | light(细字体)、normal(正常字体)、demi(黑体字)、bold(黑体字) | normal |
Clipping | 设置坐标轴中矩形的剪辑模式 |
on:当文本超出坐标轴的矩形时,超出的部分不显示 off:当文本超出坐标轴的矩形时,超出的部分显示 |
off |
EraseMode | 设置显示与擦除文字的模式 | normal、none、xor、background | normal |
SelectionHighlight | 设置选中文字是否突出显示 | on、off | on |
Visible | 设置文字是否可见 | on、off | on |
Color | 设置文字颜色 | 有效的颜色值:ColorSpec | |
HandleVisibility | 设置文字对象句柄对其他函数是否可见 | on、callback、off | on |
HitTest | 设置文字对象能否成为当前对象 | on、off | on |
Selected | 设置文字是否显示出“选中”状态 | on、off | off |
Tag | 设置用户指定的标签 | 任何字符串 | ' '(即空字符串) |
UserData | 设置用户指定数据 | 任何矩阵 | [](即空矩阵) |
BusyAction | 设置如何处理对文字回调过程中断的句柄 | cancel、queue | queue |
ButtonDownFcn | 设置当鼠标在文字上单击时,程序做出的反应 | 字符串 | ' '(即空字符串) |
CreateFcn | 设置当文字被创建时,程序做出的反应 | 字符串 | ' '(即空字符串) |
DeleteFcn | 设置当文字被删除(通过关闭或删除操作)时,程序做出的反应 | 字符串 | ' '(即空字符串) |
表中的这些属性及相应的值都可以通过 get() 函数查看,用 set() 函数进行修改。
text() 函数中的“\rightarrow”是 TeX 字符串。在 MATLAB 中,TeX 中的一些希腊字母、常用数学符号、二元运算符号、关系符号以及箭头符号都可以直接使用。
【实例】绘制函数图形 y=x^3+e^x 并标注。
>> close all % 关闭当前已打开的文件 >> clear % 清除工作区的变量 >> x = linspace(-5,5); % 创建-5~5的向量x,元素个数默认为100 >> y = x.^3+exp(x); % 定义以向量x为自变量的函数表达式y >> plot(x,y) % 绘制以x为横坐标、y为纵坐标的蓝色实线曲线 >> xt = [-3 3]; % 定义向量xt,指定图形中的x轴标注位置 >> yt = [-24 46]; % 定义向量yt,指定图形中的y轴标注位置 >> str = {'local min','local max'}; % 定义标注文本名称 >> text(xt,yt,str) % 在[xt, yt]指定的标注位置添加文本标注运行结果为:

图 1 绘制函数图形并标注