粘贴到 pdf 时如何解决扭曲的图像

问题描述 投票:0回答:0

我正在尝试使用

reportlab
中的
python
生成 pdf 报告,其中我首先创建了某些可视化效果 - 将它们保存为图像,现在我希望将它们粘贴到报告中。

然而,在这样做时图像似乎扭曲了宽高比。我不确定如何纠正这个问题,而是为什么会这样。

我正在使用

plt.savefig()
保存图像并使用
canvas.drawImage()
绘制图像。

示例屏幕截图显示它在 pdf 报告中的外观:

源图像看起来不错,当我将它们作为 png 文件打开时,在粘贴时它会变形。

用于生成图像的代码:

sns.set_style('darkgrid')
ax = sns.barplot(x=race_df['Total'], y=race_df['Race'], orient='h', color= light_orange, width=0.6)
ax.bar_label(ax.containers[0], fontsize=50)
plt.box(False)
ax.set_xlabel('', visible=False)
ax.tick_params(axis='y', which='major', labelsize=65)
ax.tick_params(axis='x', which='major', labelsize=50)
plt.yticks(fontname=font)
ax.set_ylabel('', visible=False)
#plt.rc('axes', labelsize=5)
plt.xticks(list(range(0,total,int(0.2*total))),[str(x)+'%' for x in list(range(0,110,20))])
plt.savefig(f'./Visualizations/{county_name}_Raceimage.png', dpi=300, bbox_inches='tight')

用于粘贴图像的代码:

c.drawImage('./Visualizations/Champaign County_Raceimage.png', 20, 170, 250, 150)

我在同一页上有大约 3 张图片,另一页上有 6 张图片。

python matplotlib reportlab aspect-ratio
© www.soinside.com 2019 - 2024. All rights reserved.