matplotlib.lines.VertexSelector#

class matplotlib.lines.VertexSelector(line)[Quelle]#

Bases: object

Verwaltet die Rückrufe zur Pflege einer Liste ausgewählter Vertices für Line2D. Abgeleitete Klassen sollten die Methode process_selected überschreiben, um etwas mit den Auswahlen zu tun.

Hier ist ein Beispiel, das die ausgewählten Vertices mit roten Kreisen hervorhebt.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.lines as lines

class HighlightSelected(lines.VertexSelector):
    def __init__(self, line, fmt='ro', **kwargs):
        super().__init__(line)
        self.markers, = self.axes.plot([], [], fmt, **kwargs)

    def process_selected(self, ind, xs, ys):
        self.markers.set_data(xs, ys)
        self.canvas.draw()

fig, ax = plt.subplots()
x, y = np.random.rand(2, 30)
line, = ax.plot(x, y, 'bs-', picker=5)

selector = HighlightSelected(line)
plt.show()
Parameter:
lineLine2D

Die Linie muss bereits zu einer Axes hinzugefügt worden sein und ihre Picker-Eigenschaft muss gesetzt sein.

property canvas#
onpick(event)[Quelle]#

Wenn die Linie ausgewählt wird, wird die Menge der ausgewählten Indizes aktualisiert.

process_selected(ind, xs, ys)[Quelle]#

Standardmäßige "Nichts tun"-Implementierung der Methode process_selected.

Parameter:
indListe von int

Die Indizes der ausgewählten Vertices.

xs, ysarray-ähnlich

Die Koordinaten der ausgewählten Vertices.