我如何改变我的图像的大小,使其适合打印?

例如,我想使用A4纸,它的尺寸是11.7英寸乘8.27英寸。


当前回答

除了elz回答关于返回多图网格对象的“图形级别”方法外,还可以使用以下方法显式设置图形的高度和宽度(即不使用纵横比):

import seaborn as sns 

g = sns.catplot(data=df, x='xvar', y='yvar', hue='hue_bar')
g.fig.set_figwidth(8.27)
g.fig.set_figheight(11.7)

其他回答

请注意,如果您试图传递给seaborn中的“图形级”方法(例如lmplot, catplot / factorplot, jointplot),您可以并且应该在参数中使用height和aspect指定此方法。

sns.catplot(data=df, x='xvar', y='yvar', 
    hue='hue_bar', height=8.27, aspect=11.7/8.27)

请参阅https://github.com/mwaskom/seaborn/issues/488和使用matplotlib面向对象接口使用seaborn进行绘图,以获得关于图形级方法不遵守轴规范的更多详细信息。

首先导入matplotlib并使用它来设置图形的大小

from matplotlib import pyplot as plt
import seaborn as sns

plt.figure(figsize=(15,8))
ax = sns.barplot(x="Word", y="Frequency", data=boxdata)

这可以使用:

plt.figure(figsize=(15,8))
sns.kdeplot(data,shade=True)

你也可以通过将字典传递给rc参数,键为'figure '来设置图形大小。海运集方法中的Figsize ':

import seaborn as sns

sns.set(rc={'figure.figsize':(11.7,8.27)})

其他的选择可能是使用数字。rcParams的figsize设置图形大小如下:

from matplotlib import rcParams

# figure size in inches
rcParams['figure.figsize'] = 11.7,8.27

更多细节可以在matplotlib文档中找到

这也会起作用。

from matplotlib import pyplot as plt
import seaborn as sns    

plt.figure(figsize=(15,16))
sns.countplot(data=yourdata, ...)