我如何改变我的图像的大小,使其适合打印?
例如,我想使用A4纸,它的尺寸是11.7英寸乘8.27英寸。
我如何改变我的图像的大小,使其适合打印?
例如,我想使用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)
其他回答
对于我的图(一个sns因子图),建议的答案并不能很好地工作。
因此我使用
plt.gcf().set_size_inches(11.7, 8.27)
就在与seaborn的情节之后(所以不需要传递一个斧头给seaborn或改变rc设置)。
你也可以通过将字典传递给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文档中找到
# Sets the figure size temporarily but has to be set again the next plot
plt.figure(figsize=(18,18))
sns.barplot(x=housing.ocean_proximity, y=housing.median_house_value)
plt.show()
除了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)
一些尝试过的方法:
import seaborn as sns
import matplotlib.pyplot as plt
ax, fig = plt.subplots(figsize=[15,7])
sns.boxplot(x="feature1", y="feature2",data=df) # where df would be your dataframe
or
import seaborn as sns
import matplotlib.pyplot as plt
plt.figure(figsize=[15,7])
sns.boxplot(x="feature1", y="feature2",data=df) # where df would be your dataframe