微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

多个matplotlib在pdf-Python的同一图中绘制

我正在根据pandas数据帧和系列绘制一些数据.以下是我的代码的一部分.此代码出错.

RuntimeError: underlying C/C++ object has been deleted


from matplotlib import pyplot as plt
from matplotlib.backends.backend_pdf import pdfpages
fig = plt.figure()

dfs = df['col2'].resample('10t', how='count')
dfs.plot()
plt.show()

reg = df.groupby('col1').size()
reg.sort()
reg[-10:].plot(kind='barh')
plt.show()

pp = pdfpages('foo.pdf')
fig.savefig(pp, format='pdf') 
pp.close()

我有两个问题.

>如何在一个输出中绘制多个绘图?(这里我为每个绘图获得多个输出)
>如何将所有这些图写入一个pdf?

我发现this一个相关的问题.

解决方法:

以下是给我预期结果的代码部分,可能有更优雅的方法来做到这一点;

def plotGraph(X):
    fig = plt.figure()
    X.plot()
    return fig


plot1 = plotGraph(dfs)
plot2 = plotGraph2(reg[:-10])
pp = pdfpages('foo.pdf')
pp.savefig(plot1)
pp.savefig(plot2)
pp.close()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐