gpt4 book ai didi

python - 如何将 Pandas 数据框从 PdfPages 保存到现有的 pdf 中

转载 作者:行者123 更新时间:2023-12-05 01:09:15 27 4
gpt4 key购买 nike

我创建了一个 pdf,其中保存了使用 Matplotlib 创建的几个图。

我做了以下操作来创建 pdf

from matplotlib.backends.backend_pdf import PdfPages
report = PdfPages('report.pdf')

创建情节后,我会这样做 report.savefig()每一次。但是,我也想将生成的数据帧输出到 Pdf 中。本质上,我想要一份包含图表和查询数据框的报告都在一个地方。是否可以使用用 PdfPages 创建的数据框将数据框添加到 Pdf 中,如果是这样,我该怎么做?如果没有,是否有另一种方法可以让绘图和数据框在一个地方(而不必保存单个组件并将它们拼凑在一起)?会喜欢任何建议和例子。谢谢!

最佳答案

只需创建表格的绘图,然后保存即可。给定一个数据框,例如:

import pandas as pd

df = pd.DataFrame()
df['Animal'] = ['Cow', 'Bear']
df['Weight'] = [250, 450]
df['Favorite'] = ['Grass', 'Honey']
df['Least Favorite'] = ['Meat', 'Leaves']

看起来像:
  Animal  Weight Favorite Least Favorite
0 Cow 250 Grass Meat
1 Bear 450 Honey Leaves

您可以像这样绘制它的表格版本:
import matplotlib.pyplot as plt

fig = plt.figure(figsize=(9,2))
ax = plt.subplot(111)
ax.axis('off')
ax.table(cellText=df.values, colLabels=df.columns, bbox=[0,0,1,1])

输出:

enter image description here

您可以通过向单元格添加一些背景颜色来更好地设置表格图的样式:
import matplotlib.pyplot as plt

fig = plt.figure(figsize=(9,2))
ax=plt.subplot(111)
ax.axis('off')
c = df.shape[1]
ax.table(cellText=np.vstack([df.columns, df.values]), cellColours=[['lightgray']*c] + [['none']*c]*2, bbox=[0,0,1,1])

输出:

enter image description here

看到这个 ongoing thread (所有这些示例均来自其中)以获取更多想法/变体。

编辑

我突然想到您可能想在同一个图形上绘制图像和表格。您可以这样做以获得如下结果:

enter image description here

这是一个 link to the tutorial该图像来自,其中有一些示例代码可以帮助您入门。

关于python - 如何将 Pandas 数据框从 PdfPages 保存到现有的 pdf 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53828284/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com