matplotlib包構建在轉換框架之上,可以在坐標系之間輕鬆移動。可以使用四個坐標系。這些系統在下表中簡要描述 -
坐標 | 轉換物件 | 描述 |
---|---|---|
Data | ax.transData |
使用者陸地資料坐標系,由xlim 和ylim 控制 |
Axes | ax.transAxes |
軸的坐標系。(0,0) 在左下方,(1,1) 在軸的右上方。 |
Figure | fig.transFigure |
圖的坐標系。(0,0) 在左下方,(1,1) 在圖的右上方 |
display | None |
這是顯示器的畫素坐標系。(0,0) 是左下角,(寬度,高度)是顯示的右上角(以畫素為單位)。或者可以使用(matplotlib.transforms.IdentityTransform()) 代替None 。 |
考慮以下範例 -
axes.text(x,y,"my label")
文字位於資料點(x,y)
的理論位置。也稱為「資料坐標」。
使用其他轉換物件,可以控制放置。例如,如果要將上述測試放在軸坐標系的中心,請執行以下程式碼行 -
axes.text(0.5, 0.5, "middle of graph", transform=axes.transAxes)
這些轉換可用於任何型別的Matplotlib物件。ax.text
的預設轉換是ax.transData
,fig.text
的預設轉換是fig.transFigure
。
在軸上放置文字時,軸坐標系非常有用。可能經常需要在固定位置使用文字氣泡; 例如,在軸窗格的左上方,平移或縮放時該位置保持固定。