Reputation: 10573
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
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 matplotlib methods return objects, which may be printed, can also be suppressed by assigning them with _ = ...
.
Upvotes: 65
Reputation: 1
import warnings warnings.filterwarnings("ignore")
This will resolve your issue.
Upvotes: -1
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
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