擅长:python、mysql、java
<p>你做的一切都很好,除了你不需要创建一个新的散布,而是更新旧的散布。这就是你的错误所在<code>plt.show()</code>的循环已经在运行,在回调中,您正试图再次启动它。您的回调应该如下所示:</p>
<pre class="lang-py prettyprint-override"><code>def on_pick(event):
plt.clf() # It will clear previous scatter from figure
plt.scatter([1, 2, 3, 4], [5, 6, 7, 8])
plt.draw() # It will tell pyplot to redraw
</code></pre>
<p>这将导致:
<a href="https://i.stack.imgur.com/B6X2f.gif" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/B6X2f.gif" alt="Result"/></a></p>
<p>答案是提供的,看<a href="https://stackoverflow.com/questions/40434352/updating-matplotlib-plot-when-clicked">at this question</a></p>