亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

更改圖像的原點位于極坐標圖上

更改圖像的原點位于極坐標圖上

狐的傳說 2022-09-06 16:53:02
我在極地情節中添加一個小徽標。我正在使用python來做到這一點。我使用以下代碼來執行此操作。Logo = mpimg.imread(figpath+figname)imagebox = OffsetImage(Logo, zoom=0.12)ab = AnnotationBbox(imagebox, (4.7, 8))ax1.add_artist(ab)ax1.set_ylim(0,8)輸出如下:中的坐標從徽標的中心開始。(theta,r)AnnotationBbox我想將徽標移動到下面紅色框中所示的位置:任何人都可以建議我如何做到這一點嗎?
查看完整描述

1 回答

?
躍然一笑

TA貢獻1826條經驗 獲得超6個贊

您可以使用 to 來更改框的參考點。例如,傳遞使右上角成為參考坐標。box_alignment=AnnotationBboxbox_alignment=(1,1)xy


from matplotlib.offsetbox import OffsetImage, AnnotationBbox


r = np.arange(0, 2, 0.01)

theta = 2 * np.pi * r


fig = plt.figure()

ax = fig.add_subplot(111, projection='polar')

ax.plot(theta, r)

ax.set_rmax(2)

ax.set_rticks([0.5, 1, 1.5, 2])  # Less radial ticks

ax.set_rlabel_position(-22.5)  # Move radial labels away from plotted line

ax.grid(True)


img = matplotlib.image.imread("https://upload.wikimedia.org/wikipedia/en/7/7d/Lenna_%28test_image%29.png")

imagebox = OffsetImage(img, zoom=0.12)

ab = AnnotationBbox(imagebox, xy=(np.pi*225/180, 2), box_alignment=(1,1))

ax.add_artist(ab)


plt.show()

http://img1.sycdn.imooc.com//63170aa00001f51d06550495.jpg

請注意,您還可以更改用于放置框的坐標系。例如,如果您想將徽標放在圖的左上角,則可以執行以下操作:

ab = AnnotationBbox(imagebox, xy=(0,1), xycoords='figure fraction', box_alignment=(0,1))



查看完整回答
反對 回復 2022-09-06
  • 1 回答
  • 0 關注
  • 94 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號