How to show matplotlib plots?
I am sure the configuration of matplotlib
for python is correct since I have used it to plot some figures.
But today it just stop working for some reason. I tested it with really simple code like:
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0, 5, 0.1)
y = np.sin(x)
plt.plot(x, y)
There's no error but just no figure shown up.
I am using python 2.6, Eclipse in Ubuntu
Solution 1:
In matplotlib you have two main options:
-
Create your plots and draw them at the end:
import matplotlib.pyplot as plt plt.plot(x, y) plt.plot(z, t) plt.show()
-
Create your plots and draw them as soon as they are created:
import matplotlib.pyplot as plt from matplotlib import interactive interactive(True) plt.plot(x, y) raw_input('press return to continue') plt.plot(z, t) raw_input('press return to end')
Solution 2:
You must use plt.show()
at the end in order to see the plot
Solution 3:
In case anyone else ends up here using Jupyter Notebooks, you just need
%matplotlib inline
Purpose of "%matplotlib inline"
Solution 4:
Save the plot as png
plt.savefig("temp.png")
Solution 5:
plt.plot(X,y)
function just draws the plot on the canvas. In order to view the plot, you have to specify plt.show()
after plt.plot(X,y)
. So,
import matplotlib.pyplot as plt
X = //your x
y = //your y
plt.plot(X,y)
plt.show()