首页 > 编程笔记 > MATLAB笔记 阅读:26

MATLAB text()函数的用法(附带实例)

在 MATLAB 中,要给绘制的图形添加详细的标注,可以借助 text() 函数实现。

text() 函数的调用格式及说明如下表所示。

表 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 可以修改创建的文本对象的属性

表 2 text() 函数属性列表
属性名 含 义 有效值 默认值
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 绘制函数图形并标注

相关文章