Python plt.figure未调整图形大小

Python plt.figure未调整图形大小,python,matplotlib,plot,seaborn,figsize,Python,Matplotlib,Plot,Seaborn,Figsize,我有这个函数,我想改变图形的大小,但是无论我在figsize中输入什么值,图形大小都不会改变。有人能提出什么问题吗?或者是否有其他方法可以做到这一点 def plot_comparison_barplots(df, bar_col, hue_col, scaled): fig = plt.figure(figsize=(12,10)) fig.set_tight_layout(True) plt.rcParams.update({'font.size': 9})

我有这个函数,我想改变图形的大小,但是无论我在figsize中输入什么值,图形大小都不会改变。有人能提出什么问题吗?或者是否有其他方法可以做到这一点

def plot_comparison_barplots(df, bar_col, hue_col, scaled):

    fig = plt.figure(figsize=(12,10))
    fig.set_tight_layout(True)
    plt.rcParams.update({'font.size': 9})
     
    ax = sns.catplot(x=bar_col, y='count in %', data=df, hue=hue_col, kind='bar', order=scaled) 

实现此功能有一种更简单的方法,即使用
子绘图
而不是
,因为当您使用
设置紧密布局()
方法时,这会自动更改轴的位置,以使图形看起来更美观,并确保没有轴名称被切断。解决此问题的最快方法是在
set\u tight\u layout()
方法之前定义轴,以便
figsize
参数覆盖它

更改

fig=plt.figure(figsize=(12,10))


fig,ax=plt.subplot(figsize=(12,10))
实现此功能的方法更简单,使用
subplot
而不是
figure
,就像使用
set_tight_layout()
方法一样,这会自动更改轴的位置,使图形看起来更漂亮,并确保没有任何轴名称被截断。解决此问题的最快方法是在
set\u tight\u layout()
方法之前定义轴,以便
figsize
参数覆盖它

更改

fig=plt.figure(figsize=(12,10))


fig,ax=plt.子批次(figsize=(12,10))
您可以通过Seaborn添加为:

sns.set(rc={'figure.figsize':(12,10)})

您可以通过Seaborn添加为:

sns.set(rc={'figure.figsize':(12,10)})

您能否提供一些样本数据,使您的问题具有可复制性?添加数据,作为示例,您能否提供一些样本数据,使您的问题具有可复制性?添加数据,作为样例,它可以调整大小,但它也与我的图表一起生成一个额外的空白图,标准的siZeCube,你可以把它的图像添加到你的问题中,这样我就可以看一看。为空白图提供解决方案。这里CATRAP已经生成了一个图形,并且建议不要使用子图。我可以直接在catplot中使用“高度”和“方面”来更改图形的大小感谢它确实调整了大小,但它也会与我的图形一起生成另一个标准大小的空白图形您可以在您的问题中添加它的图像吗,所以我可以看一下,为空白图提供解决方案,这里CATRAP已经生成了一个图形,并且建议不要使用子图。我可以直接在catplot中使用“高度”和“方面”来更改图形的大小