python运行程序后不显示图像是什么原因_为什么plt.imshow()不显示图像?

I am a newbie to keras, and when I tried to run my first keras program on my linux, something just didn't go as I wish.

Here is my python code:

import numpy as np

np.random.seed(123)

from keras.models import Sequential

from keras.layers import Dense, Dropout, Activation, Flatten

from keras.layers import Convolution2D, MaxPooling2D

from keras.utils import np_utils

from keras.datasets import mnist

(X_train,y_train),(X_test,y_test) = mnist.load_data()

print X_train.shape

from matplotlib import pyplot as plt

plt.imshow(X_train[0])

The last sentence doesn't display anything. I copied those codes from a tutorial with out any modification. And there is nothing wrong with the backend of matplotlib on my computer. I have tested that through the code below.

import matplotlib.pyplot as plt

data = [[0, 0.25], [0.5, 0.75]]

fig, ax = plt.subplots()

im = ax.imshow(data, cmap=plt.get_cmap('hot'), interpolation='nearest',

vmin=0, vmax=1)

fig.colorbar(im)

plt.show()

And then I got a image like that:

Moreover, I can get X_train[0] printed and it seems nothing wrong.

So what could be the reason for that? Why the imshow() function in my first code didn't display anything?

解决方案

The solution was as simple as adding plt.show() at the end of the code snippet:

import numpy as np

np.random.seed(123)

from keras.models import Sequential

from keras.layers import Dense, Dropout, Activation, Flatten

from keras.layers import Convolution2D, MaxPooling2D

from keras.utils import np_utils

from keras.datasets import mnist

(X_train,y_train),(X_test,y_test) = mnist.load_data()

print X_train.shape

from matplotlib import pyplot as plt

plt.imshow(X_train[0])

plt.show()

你可能感兴趣的:(python运行程序后不显示图像是什么原因_为什么plt.imshow()不显示图像?)