【无标题】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)
相关推荐
Tianyanxiao15 分钟前
如何利用探商宝精准营销,抓住行业机遇——以AI技术与大数据推动企业信息精准筛选
大数据·人工智能·科技·数据分析·深度优先·零售
撞南墙者22 分钟前
OpenCV自学系列(1)——简介和GUI特征操作
人工智能·opencv·计算机视觉
OCR_wintone42123 分钟前
易泊车牌识别相机,助力智慧工地建设
人工智能·数码相机·ocr
王哈哈^_^1 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
一者仁心1 小时前
【AI技术】PaddleSpeech
人工智能
是瑶瑶子啦1 小时前
【深度学习】论文笔记:空间变换网络(Spatial Transformer Networks)
论文阅读·人工智能·深度学习·视觉检测·空间变换
EasyCVR1 小时前
萤石设备视频接入平台EasyCVR多品牌摄像机视频平台海康ehome平台(ISUP)接入EasyCVR不在线如何排查?
运维·服务器·网络·人工智能·ffmpeg·音视频
柳鲲鹏1 小时前
OpenCV视频防抖源码及编译脚本
人工智能·opencv·计算机视觉
西柚小萌新1 小时前
8.机器学习--决策树
人工智能·决策树·机器学习
向阳12181 小时前
Bert快速入门
人工智能·python·自然语言处理·bert