gpt4 book ai didi

python - 将每个 seaborn 图形附加到 for 循环内的 PDF

转载 作者:行者123 更新时间:2023-12-05 07:04:17 25 4
gpt4 key购买 nike

这是此问题的后续问题 Link

我有以下代码可以为每个人生成一个数字:

# Import pandas library 
import pandas as pd
import numpy as np
# Data
data = [['tom', 10,1], ['nick', 15,1], ['dom', 14,1], ['tom', 15,2], ['nick', 18,2], ['dom', 15,2], ['tom', 17,3]
, ['nick', 14,3], ['tom',16 ,4], ['dom', 22,3]]

# Create the pandas DataFrame
df = pd.DataFrame(data, columns = ['Name', 'Score','Attempt'])

# print dataframe.
df.sort_values(by='Score',ascending=False,inplace=True)

#Plot Images
import matplotlib.pyplot as plt
import seaborn as sns
plt.style.use('seaborn')

for name in df['Name'].unique():
fig, ax = plt.subplots()
#df = df.sort_values(by='Score',ascending=False).reset_index(drop=True)
sub = df[df.Name == name]
sns.barplot(y='Attempt',x='Score',data=sub, orient='h', ax=ax,order=sub['Attempt'])
ax.set_title(name.capitalize())

这给了我:

Ouput

Question:

我如何添加到循环中以将每个单独的图形放在 pdf 的新页面上。理想情况下,我可以运行代码并生成一个 3 页的 PDF。 EG-

Page 1 = Dom
Page 2 = Nick
Page 3 = Tom

任何帮助将不胜感激!谢谢!

最佳答案

我想通过多做一些搜索我已经回答了我的问题:

这是绘制并保存到多个页面的代码:

#Plot Images and save pdf
import matplotlib.backends.backend_pdf
import matplotlib.pyplot as plt
import seaborn as sns
plt.style.use('seaborn')
pdf = matplotlib.backends.backend_pdf.PdfPages("output.pdf")
for name in df['Name'].unique():
fig, ax = plt.subplots()
sub = df[df.Name == name]
sns.barplot(y='Attempt',x='Score',data=sub, orient='h', ax=ax,order=sub['Attempt'])
ax.set_title(name.capitalize())
pdf.savefig( fig )
pdf.close()

关于python - 将每个 seaborn 图形附加到 for 循环内的 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62963807/

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