我是Python的新手,我在matplotlib上绘制图表时遇到了一些问题,希望大家都能帮到我。
所以我有一个显示给定年份温度的DataFrame。
01-01 334
01-02 320
01-03 330
01-04 331
01-05 328
.
.
.
12-27 318
12-28 320
12-29 320
12-30 325
12-31 334
当我尝试使用以下代码绘制它时:
dates = pd.date_range('1/1/2015','31/12/2015', freq = 'D')
yvals = list(df.values)
plt.figure()
plt.plot(dates,'-', yvals, '-')
它只返回一个没有点或线的白色数字。
我该如何解决这个问题?非常感谢你!
答案 0 :(得分:0)
我们不清楚您的item1,item2,probablility
a,b,1
a,b,0.3
b,c,0.3
a,d,0.3
b,c,0.3
a,e,0.3
b,3,0.3
是什么,但我怀疑它是您的第二个DataFrame列?
在这种情况下,您可以使用DataFrame.plot()方法。
答案 1 :(得分:0)
如果您使用matplotlib
,则可以尝试使用plt.show()
:
plt.figure()
sample_image = plt.plot(x,y)
plt.imshow(sample_image)
plt.show() # display it
注意:请注意,您无需显示图片以进行保存。
plt.savefig('image.png')
答案 2 :(得分:0)
您应该将日期转换为数字,或使用plt.plot_dates:
dates = pd.date_range('1/1/2015' ,'31/12/2015', freq = 'D')
yvals = np.linspace(1,366,365)
plt.plot_date(dates ,yvals)
plt.show()
(我不知道你的y are是什么,所以我把它们搞定了。也应该和你的一起工作) 阅读plot_date文档以获取更多详细信息
答案 3 :(得分:0)
语法为plt.plot(x, y, style)
尝试
plt.plot(dates, yvals, '-')