【无标题】Matlab之annotation函数——创建图形注释(箭头、椭圆、矩形)

应用1:创建文本箭头注释

创建一个简单线图并向图窗添加文本箭头。用归一化的图窗坐标指定文本箭头位置,起点为 (0.3,0.6),终点为 (0.5,0.5)。通过设置 String 属性指定文本说明。

复制代码
figure
plot(1:10)
x = [0.3 0.5];
y = [0.6 0.5];
annotation('textarrow',x,y,'String','y = x ')

备注1:annotation(lineType,x,y) 创建一个在当前图窗中的两个点之间延伸的线条或箭头注释。将 lineType 指定为 'line'、'arrow'、'doublearrow' 或 'textarrow'。将 x 和 y 分别指定为 [x_begin x_end] 和 [y_begin y_end] 形式的二元素向量。

备注2: annotation(lineType) 在点 (0.3,0.3) 和 (0.4,0.4) 之间的默认位置创建注释。
应用2:创建文本框注释

创建一个简单线图并向图窗添加文本框注释。通过设置 String 属性指定文本说明。通过将 FitBoxToText 属性设置为 'on',强制使文本框紧贴文本。

复制代码
figure
plot(1:10)
dim = [.2 .5 .3 .3];
str = 'Straight Line Plot from 1 to 10';
annotation('textbox',dim,'String',str,'FitBoxToText','on');

创建文本框注释而不设置 FitBoxToText 属性。文本框使用指定的宽度和高度,并根据需要进行文本换行。

复制代码
figure
plot(1:10)
dim = [.2 .5 .3 .3];
str = 'Straight Line Plot from 1 to 10';
annotation('textbox',dim,'String',str)

备注1: annotation(shapeType,dim) 在当前图窗中创建具有特定大小和位置 的矩形、椭圆或文本框注释。将 shapeType 指定为 'rectangle'、'ellipse' 或 'textbox'。指定 dim 作为 [x y w h] 形式的四元素向量。x 和 y 元素确定位置,w 和 h 元素确定大小。

文本框的尺寸和位置,指定为 [x y w h] 形式的四元素向量。前两个元素指定文本框、矩形或椭圆的左下角相对于图窗左下角的坐标。后两个元素分别指定注释的宽度和高度。【如果您创建椭圆,则 dim 是包围该椭圆的最小矩形的尺寸和位置。】

备注2:annotation(shapeType) 会在默认位置创建注释,以使左下角位于 (0.3,0.3) 且宽度和高度均为 0.1。
应用3: 创建包含多行文本的文本框注释

通过将 String 属性设置为元胞数组,创建包含多行文本的文本框注释。元胞数组的每个元素显示在单独的行上。通过将 FitBoxToText 属性设置为 'on',强制使文本框紧贴文本。

复制代码
figure
plot(1:10)
dim = [0.2 0.5 0.3 0.3];
str = {'Straight Line Plot','from 1 to 10'};
annotation('textbox',dim,'String',str,'FitBoxToText','on');


应用4: 创建后修改注释

向图窗添加一个文本箭头,并返回注释文本箭头对象 a。使用 a 修改注释文本箭头的属性。例如,将颜色更改为红色,将字体大小更改为 14 磅。

复制代码
figure
plot(1:10)
x = [0.3,0.5];
y = [0.6,0.5];
a = annotation('textarrow',x,y,'String','y = x ');
a.Color = 'red';
a.FontSize = 14;


应用5:创建矩形注释

创建一个针状图并向图窗添加矩形注释。通过指定 Color 属性更改矩形轮廓的颜色。向图窗添加另一个矩形注释。通过设置 FaceColor 属性指定填充颜色。通过将 FaceAlpha 属性设置为 0(完全透明)到 1(完全不透明)之间的值添加透明度。

复制代码
figure
data = [2 4 6 7 8 7 5 2];
stem(data)
dim = [.3 .68 .2 .2];
annotation('rectangle',dim,'Color','red')
dim2 = [.74 .56 .1 .1];
annotation('rectangle',dim2,'FaceColor','blue','FaceAlpha',.2)


应用6: 添加椭圆注释

创建一个简单线图并向图窗添加椭圆注释。将 dim 指定为包围椭圆的最小矩形的尺寸和位置。

复制代码
figure
x = linspace(-4,4);
y = x.^3 - 12*x;
plot(x,y)
dim = [.2 .74 .25 .15];
annotation('ellipse',dim)
annotation('rectangle',dim,'Color','red') 
 %使用相同的尺寸绘制一个红色矩形,以显示椭圆如何填充矩形区域

备注:annotation(___,Name,Value) 用于创建注释并将属性指定为名称-值对组参数。不同类型的注释支持不同属性。您可以使用上述语法中的任意输入参数组合指定属性。

应用7: 组合使用2种类型的注释

创建一个简单的线图。然后,通过组合使用线条和箭头注释向图形添加一个弯曲箭头。

复制代码
figure
plot(1:10)

xl = [.3 .3];
yl = [.3 .4];
annotation('line',xl,yl)

xa = [.3 .4];
ya = [.4 .4];
annotation('arrow',xa,ya)
相关推荐
我爱cope15 小时前
【Agent智能体2 | Agent的自主性程度】
人工智能·职场和发展
song50115 小时前
对话:模型推理慢,怎么调
人工智能·分布式·深度学习·transformer·交互
1892280486115 小时前
NY386固态MT29F32T08GWLBHD6-T:B
大数据·服务器·人工智能·科技·缓存
机器学习之心15 小时前
大跨度拱桥施工智能优化:基于改进RBF神经网络与多目标算法的工程实践
人工智能·神经网络·算法·大跨度拱桥施工智能优化
z小猫不吃鱼15 小时前
12 从 ViT 到 Swin:视觉 Transformer 主干网络的发展脉络总结
人工智能·深度学习·transformer
Deep-w15 小时前
【MATLAB】基于 MATLAB/Simulink 的无刷直流电机(BLDC)转速控制模糊 PID 算法
开发语言·算法·matlab
嗝o゚15 小时前
昇腾CANN cann-recipes-train 仓:在大模型上做微调是什么体验
人工智能·chatgpt·cann
2601_9578822416 小时前
多平台数字内容集群的版权合规与风控体系:从查重检测到IP保护的技术实践
人工智能·网络协议·tcp/ip
俊哥V16 小时前
每日 AI 研究简报 · 2026-05-23
人工智能·ai
udc小白16 小时前
EXCEL实现MLP实例
人工智能·深度学习·神经网络·机器学习