1
我想在matplotlib中的數組中打開的圖像上繪製框。我發現繪製盒子的一種方法是使用add_patch
,但我找不到在從數組加載的圖像上使用它的方式。向matplotlib中打開的numpy數組添加修補程序
此代碼
arr = np.random.rand(400,400)
fig = plt.imshow(arr)
fig.add_patch(patches.Rectangle((100, 100), 100, 100, fill=False))
產生錯誤:AttributeError的: 'AxesImage' 對象有沒有屬性 'add_patch'
'imshow'返回一個'AxisImage'而不是'Figure'。一個'圖'對象沒有'add_patch'方法,'Axes'對象。顯然'AxisImage'不會從'AxisBase'繼承。您可以通過'axes'屬性獲取'AxisImage'的軸。例如'plt.imshow(arr).axes' –