import sys import numpy as np import matplotlib.pyplot as plt # définition du nuage testData = np.array([[0,0], [0.1, 0], [0, 0.3], [-0.4, 0], [0, -0.5]]) fig, ax = plt.subplots() coll = ax.scatter(testData[:,0], testData[:,1], color=["blue"]*len(testData), picker = 5, s=[50]*len(testData)) # aspects esthétiques facultatifs plt.grid(True) plt.axis([-0.5, 0.5, -0.5, 0.5]) # défintion du callback: interaction hyperfacile par variables globales !!! def on_pick(event): print(testData[event.ind], "clicked") # récupération auto de l'élément cliqué coll._facecolors[event.ind,:] = (1, 0, 0, 1) # modif du plot coll._edgecolors[event.ind,:] = (1, 0, 0, 1) fig.canvas.draw() # connection du système fig.canvas.mpl_connect('pick_event', on_pick) plt.show()