shelper
shelper

Reputation: 10573

Disable the output of matplotlib pyplot

I have an array A of shape (1000, 2000). I use matplotlib.pyplot to plot the array, which means 1000 curves, using

import matplotlib.pyplot as plt

plt.plot(A)

The figure is fine but there are a thousand lines of:

<matplotlib.lines.Line2D at 0xXXXXXXXX>

Can I disable this output?

Upvotes: 63

Views: 78730

Answers (4)

Chris
Chris

Reputation: 46306

matplotlib.pyplot.plot returns a list of Line2D objects. To suppress this output, assign the return object a name:

_ = plt.plot(A)

_ is often used to indicate a temporary object which is not going to be used later on. Note that this output you are seeing will only appear in the interpreter, and not when you run the script from outside the interpreter.

Other methods return objects, which may be printed, can also be suppressed by assigning them with _ = ....

Upvotes: 65

Saurabh Gupta
Saurabh Gupta

Reputation: 1

To ignore warnings

import warnings warnings.filterwarnings("ignore")

This will resolve your issue.

Upvotes: -1

tacaswell
tacaswell

Reputation: 87376

You can also suppress the output by use of ; at the end (assuming you are doing this in some sort of interactive environment)

 plot(A);  

Upvotes: 70

joeDiHare
joeDiHare

Reputation: 679

plt.show()

This way there is no need to create unnecessary variables.

E.g.:

import matplotlib.pyplot as plt

plt.plot(A)
plt.show()

Upvotes: 30

Related Questions