我有以下代码:
import matplotlib.pyplotimport numpydata_file = open("train/small_train.csv", "r")data_list = data_file.readlines()data_file.close()all_values = data_list[0].split(",")image_array = numpy.asfarray(all_values[1:]).reshape((28,28))matplotlib.pyplot.imshow(image_array, cmap="Greys", interpolation="None")
这段代码应该读取.csv文件的第一行,并提取像素值(split(","
),然后将它们组合成一张图片。
代码运行时没有报错,但没有显示图片…
回答:
这样应该可以解决问题,你忘记使用show()
方法了。
你应该使用from
关键字来import
你需要的函数。这样做,你就不需要调用它们所在的文件(如matplotlib.pyplot
)。我还使用了with
关键字,它能很好地处理文件操作。它以一种干净的方式打开文件,并正确地关闭文件。
from matplotlib import pyplot as pltimport numpy as npwith open("train/small_train.csv", "r") as data: data_list = data.readlines()all_values = data_list[0].split(",")image_array = np.asfarray(all_values[1:]).reshape((28,28))plt.imshow(image_array, cmap="Greys", interpolation="None")plt.show()