Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
895 views
in Technique[技术] by (71.8m points)

python - plt.show() not working in spyder ide

I am new to Python and Spyder. I am using Python 2.7.13 and Spyder 3.1.4. I cannot get plt.show() to work on my data, and cannot reproduce a simple histogram example from the website. plt.draw() does not work either. I have changed the graphics backend from inline to automatic to Qt4 to Qt5 as a similar question proposed, but non of this has worked. If type fig in the IPython console, it will display the graph. I am posting the example here. Any suggestions on how to fix this are appreciated.

import numpy as np

import matplotlib.pyplot as plt
import matplotlib.mlab as mlab

mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)

fig = plt.figure()
ax = fig.add_subplot(111)

# the histogram of the data
n, bins, patches = ax.hist(x, 50, normed=1, facecolor='green', alpha=0.75)

# hist uses np.histogram under the hood to create 'n' and 'bins'.
# np.histogram returns the bin edges, so there will be 50 probability
# density values in n, 51 bin edges in bins and 50 patches.  To get
# everything lined up, we'll compute the bin centers
bincenters = 0.5*(bins[1:]+bins[:-1])
# add a 'best fit' line for the normal PDF
y = mlab.normpdf( bincenters, mu, sigma)
l = ax.plot(bincenters, y, 'r--', linewidth=1)

ax.set_xlabel('Smarts')
ax.set_ylabel('Probability')
#ax.set_title(r'$mathrm{Histogram of IQ:} mu=100, sigma=15$')
ax.set_xlim(40, 160)
ax.set_ylim(0, 0.03)
ax.grid(True)

plt.show()
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Change your IPython console graphics settings.

If you are using Spyder here are the steps:

  1. Go to Tools.
  2. Go to Preferences.
  3. Select IPython console.
  4. Go to Graphics tab.
  5. Under theGraphics backend section, select Automatic as the backend type.

Then, restart your kernel.

enter image description here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

57.0k users

...