首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将熊猫数据保存到PdfPages现有的pdf中

如何将熊猫数据保存到PdfPages现有的pdf中
EN

Stack Overflow用户
提问于 2018-12-18 07:34:15
回答 1查看 8.3K关注 0票数 5

我创建了一个pdf,它保存了使用Matplotlib创建的几个地块。

我做了下面的工作来创建pdf

代码语言:javascript
复制
from matplotlib.backends.backend_pdf import PdfPages
report = PdfPages('report.pdf')

在创建了一个情节之后,我每次都会做这个report.savefig()。但是,我也希望将生成的数据输出到Pdf中。本质上,我想要一个包含情节和查询数据的报告,所有这些都在一个地方。是否可以使用用PdfPages创建的数据格式向Pdf中添加数据,如果可以,我将如何做到?如果没有,是否有另一种方法可以让地块和数据集一次到位(而不必保存单独的组件并将它们拼凑在一起)?会喜欢任何建议和例子。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-18 07:47:03

只需创建表的一个图,然后保存它。给定数据,例如:

代码语言:javascript
复制
import pandas as pd

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

看上去像是:

代码语言:javascript
复制
  Animal  Weight Favorite Least Favorite
0    Cow     250    Grass           Meat
1   Bear     450    Honey         Leaves

您可以这样绘制它的表版本:

代码语言:javascript
复制
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])

输出:

通过在单元格中添加一些背景颜色,您可以将表格的布局设计得更好一些:

代码语言:javascript
复制
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])

输出:

有关更多的想法/变体,请参阅这个正在进行的线程 (所有这些示例都是从这个正在进行的线程中获取的)。

编辑

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

这是一个来自链接到本教程的图像,它有一些示例代码来帮助您入门。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53828284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档