Savefig 返回空白图像



我正在尝试使用熊猫绘图功能绘制熊猫数据帧(result_m(,但是当我尝试使用savefig保存图形时,它返回了一个空白的pdf。 它在笔记本窗口中打印正常。 不知道我做错了什么

fig = plt.figure()
ax = result_m.plot( kind='line',  figsize=(20, 10),fontsize=15)
ax.set_title('Harkins Slough Diversions',fontsize= 20) 
ax.set_xlabel( "Date",fontsize=18)
ax.set_ylabel("cubic meters",fontsize=18)
plt.legend(fontsize=15)
fig.savefig(os.path.join(outPath4,'plot_fig.pdf'))

问题是你创建的图不在你创建(和保存(的图形上。在第二行:

ax = result_m.plot( kind='line',  figsize=(20, 10),fontsize=15)

熊猫创建了一个新图形,因为您没有提供轴(ax(参数。请参阅熊猫文档,了解如何绘制到特定的子图。

您可以通过跳过图形创建步骤,然后从轴对象获取熊猫创建的图形来解决此问题:

ax = result_m.plot( kind='line',  figsize=(20, 10),fontsize=15)
fig = ax.figure

或者通过将绘图添加到您创建的图形中,首先创建一个子绘图:

fig = plt.figure(size=(20, 10))
ax = fig.add_subplot(111)
ax = result_m.plot( kind='line',  fontsize=15, ax=ax)

请注意,在此选项中,在创建图形时定义图形的size属性,而不是通过将figsize传递给DataFrame.plot

相关内容

  • 没有找到相关文章

最新更新