如何调整seaborn.objects(seaborn v0.12新增接口)的图像尺寸?
如何设置seaborn.objects绘图的尺寸
传统seaborn轴级/图级绘图的尺寸调整方案,对v0.12版本新增的seaborn.objects接口无效。以下是两种可行的设置方式,分别支持英寸和像素单位:
方法一:通过theme()设置英寸单位的尺寸
利用Plot.theme()方法传入matplotlib的配置参数,直接指定以英寸为单位的宽高:
import seaborn as sns from seaborn import objects as so df = sns.load_dataset('planets') p = (so.Plot(data=df, x='orbital_period', y='mass') .add(so.Dot()) .theme({"figure.figsize": (10, 6)}) # 宽度10英寸,高度6英寸 ) p.save('output.png') p.show()
方法二:在save()中指定像素级尺寸
如果需要精确控制像素大小,可以结合figsize和dpi参数计算:比如要生成1920×1080像素的图片,当dpi设为100时,对应的figsize为(1920/100, 1080/100)即(19.2, 10.8):
import seaborn as sns from seaborn import objects as so df = sns.load_dataset('planets') p = so.Plot(data=df, x='orbital_period', y='mass').add(so.Dot()) # 生成1920x1080像素的图片 p.save('output.png', figsize=(19.2, 10.8), dpi=100) p.show()
另外,也可以直接在show()前获取matplotlib的画布对象调整尺寸,但上面两种方法更贴合seaborn.objects的声明式风格。
内容的提问来源于stack exchange,提问作者J.W
相关产品推荐
相关产品推荐

