matlab 关于annotation函数的一点用法

这几天做毕设,用到了matlab的一些功能,先吐槽一下matlab的官方api写的是真的不好,很多东西不解释清楚。

首先对于所有的annotation函数,里面不论是维度还是大小参数,都是归一化到[0,1]之间的,也就是说,注释和所画的图用的坐标体系是不一样的。

其次,annotation所画注释的原点在整个窗口的左下方,其范围一直扩展到整个窗口的右上方

如图所示,整个最外圈的红线区域就是其[0,0]到[1,1]的范围

 

理解了这个,annotation的用法应该大致明白了

#########还没结束#############

还有一个迷惑的annotation叫做矩形,官方解释是这样的:

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

现在尝试一下

scatter(X(:,1),X(:,2),'.');
annotation('rectangle',[0.5 0.5 .5 .5],'Color','red')

可以看到,[x,y,w,h]中,x,y指的是矩形左下顶点的坐标, w指width,h值height

 

最后椭圆的[x,y,w,h]表示的是画一个[x,y,w,h]的矩形的内接椭圆。

 

posted @ 2020-04-01 09:19  Z_Agent  阅读(5631)  评论(0编辑  收藏  举报