5
Quindi ho un semplice diagramma a dispersione, con un evento di selezione. Voglio cambiare il colore del punto dati che clicco con il mouse. Il codice che ho cambierà il colore dell'intero array. Come posso cambiare un punto particolare? GraziePython, Matplotlib, trama di dispersione, Cambia colore sul punto cliccato
import sys
import numpy as np
import matplotlib.pyplot as plt
testData = np.array([[0,0], [0.1, 0], [0, 0.3], [-0.4, 0], [0, -0.5]])
fig, ax = plt.subplots()
sctPlot, = ax.plot(testData[:,0], testData[:,1], "o", picker = 5)
plt.grid(True)
plt.axis([-0.5, 0.5, -0.5, 0.5])
def on_pick(event):
artist = event.artist
artist.set_color(np.random.random(3))
print "click!"
fig.canvas.draw()
fig.canvas.mpl_connect('pick_event', on_pick)