以下代码对我来说绝对不可理解:
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np
img=mpimg.imread('stinkbug.png')
imgplot = plt.imshow(img)
circle = plt.Circle((0, 0), radius=100, fc='y')
plt.figure(0)
#plt.show(imgplot)
plt.show(circle)
它显示两个数字,但不只有一个show()
函数被调用。
虽然imgplot从未显示过,但它在图中显示了臭椿。
虽然显示了圆圈,但它不显示圆圈。
答案 0 :(得分:7)
您告诉matplotlib执行以下操作:
plt.show()
。因为matplotlib很好,它会忽略这个参数,只显示预测的两个数字。一些笔记
plt.show()
只会显示所有数字。解决方案
鉴于这一切,我认为你正在努力做到这一点:
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np
img = mpimg.imread('stinkbug.png')
circle = plt.Circle((0, 0), radius=100, fc='y')
fig, ax = plt.subplots()
ax.imshow(img)
ax.add_artist(circle)
fig.show()
subplots
为您创建数字和轴。然后,您可以使用ax.imshow
显示图片,并ax.add_artist
显示圈子。在这种情况下,fig.show()
和plt.show()
相同。