我有一个奇怪的错误,没有你的帮助我无法解决。在 matplotlib 中设置图像后,imshow
即使我使用方法更改它,它也始终保持不变set_data
。看看这个例子:
import numpy as np
from matplotlib import pyplot as plt
def newevent(event):
haha[1,1] += 1
img.set_data(haha)
print img.get_array() # the data is change at this point
plt.draw()
haha = np.zeros((2,2))
img = plt.imshow(haha)
print img.get_array() # [[0,0],[0,0]]
plt.connect('button_press_event', newevent)
plt.show()
在我绘制它之后,该方法set_data
不会改变图中的任何内容。有人可以解释我为什么吗?
编辑
只是添加了几行来指出我真正想做的事情。我想在按下鼠标按钮后重绘数据。我不想删除整个数字,因为如果只有一件事发生变化,那就太愚蠢了。