這幾天做畢設,用到了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]
形式的四元素向量。x
和 y
元素確定位置,w
和 h
元素確定大小。’
現在嘗試一下
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]的矩形的內接橢圓。