Ich habe ein Python-Skript, das viele (n) Zeilen mit jeweils 10 Punkten zeichnet, und ich versuche es so zu machen, dass ich auf eine Zeile klicken kann Es wird die ID der Linie und die ID des Punktes in der Linie gedruckt. Bisher habe ich diese bekam:Wie man NUR einen Punkt in Matplotlib auswählt pick_event
def onpick(event):
ind = event.ind
s = event.artist.get_gid()
print s, ind
#x and y are n x 10 arrays
#s is the id of the line
for s in range(n):
ax.plot(x[s,:],y[s,:],'^',color=colors(s),picker=2,gid=str(s))
Das funktioniert gut und gibt mir ein Grundstück ein bisschen wie diese (ich zuvor legte die farbigen Kästchen und colorbar anstelle als Referenz):
ich kann klicken sie auf einen Punkt und druckt es so etwas wie
1 [1]
** Das Problem ist dieses - ** wenn ich zwischen zwei Punkten klicken, die sehr nahe sind es druckt
0 [2 3]
oder ähnlich. Ich kann den "Picker" Abstand nicht weiter reduzieren, weil es sehr schwierig ist, die Maus in die genau richtige Position zu bringen, um einen Punkt auszuwählen.
Was ich möchte ist eine Möglichkeit, die Auswahl zu beschränken, um NUR der nächste Punkt zu sein. Irgendwelche Ideen?