我是python的新手。我正在阅读一些 .csv
文件并获取数据。现在我必须混合这些并生成各种图形。我使用matplotlib.pyplot
生成图表。现在,我想在文件中显示每个图表(可能是 .pdf
或 .doc
)以及每个图表的一些文本结果。实现这一目标的最佳方法是什么? pyplot
图表可以转换为单个.pdf
文件,但在这些文件中添加文字很困难。
EDIT:
以下代码无效
from random import randint
import numpy as np
import matplotlib.pyplot as plt
from io import BytesIO
from reportlab.pdfgen import canvas
from reportlab.lib.units import inch,cm
from reportlab.lib.utils import ImageReader
y=np.ones(10)
for i in range(10):
for j in range(10):
y[j]=randint(0,9)
#x[i]=y
fig=plt.figure(figsize=(4,4))
plt.plot(y)
print(y)
plt.ylabel('some numbers')
imgdata=BytesIO()
fig.savefig(imgdata, format='png')
imgdata.seek(0)
Image=ImageReader(imgdata)
c.drawImage(Image, cm, cm, inch, inch)
c.showPage()
c=canvas.Canvas('test1.pdf')
c.save()
答案 0 :(得分:0)
所以,首先要生成艺术作品的pyplot
部分:
接下来,保存它(使用iostream,没有文件代理,是一种更聪明的方式)。
最后,使用您选择的Python PDF工具来控制报表文档布局,内容和装配管理任务。选项很多: pypdf
, pyfpdf
, reportlab
以及许多其他选项 - 而偏好是你的。