Jomme Jomme - 1 month ago 11
Python Question

Matplotlib - How to remove a specific line or curve

I want to remove a specific line in a plot of multiple lines. Bellow is a given example which is not sufficient for me because it removes only the last plotted line and not the line that I want to remove. How can I do that? How can I address a specific line(by name, by number, by reference) throughout the program and delete that line?

self.axes.lines.remove(self.axes.lines[0])

Answer

Almost all of the plotting functions return a reference to the artist object created ex:

ln, = plot(x, y)  # plot actually returns a list of artists, hence the ,
im = imshow(Z)

If you have the reference you can remove an artist via the remove (doc) function ex:

ln.remove()
im.remove()