Pandas 是否有一种方法可以使用Seaborn为同一图形使用多个子图?

Pandas 是否有一种方法可以使用Seaborn为同一图形使用多个子图?,pandas,matplotlib,seaborn,Pandas,Matplotlib,Seaborn,我想在同一个图上显示两个图(散点图和条形图),布局如下: |0 | 1 | 2 | 3| 但其中0到2用第一个图填充,3用第二个图填充。我曾尝试使用fig,ax=plt.subplot(1,4,figsize=(12,10))来创建一个1x4子地块数组,但是当我调用sns.scatterplot(…,ax=…)时,ax参数只能接受一个子地块标签 在subplot调用或ax参数中,有没有一种方法可以生成宽度为75%的绘图?这是使用plt.subplot()的一种方法,使用关键字gridspec\u

我想在同一个图上显示两个图(散点图和条形图),布局如下:

|0 | 1 | 2 | 3|

但其中0到2用第一个图填充,3用第二个图填充。我曾尝试使用
fig,ax=plt.subplot(1,4,figsize=(12,10))
来创建一个1x4子地块数组,但是当我调用sns.scatterplot(…,ax=…)时,
ax
参数只能接受一个子地块标签


在subplot调用或
ax
参数中,有没有一种方法可以生成宽度为75%的绘图?

这是使用
plt.subplot()
的一种方法,使用关键字
gridspec\u kwdict
,它接受传递给GridSpec构造函数的字典,该构造函数用于创建放置子地块的网格

import numpy as np
from collections import Counter
import matplotlib.pyplot as plt 

np.random.seed(123)

data = np.random.randint(0, 10, 100)

x, y = zip(*Counter(data).items())

fig, (ax1, ax2) = plt.subplots(1, 2, gridspec_kw={'width_ratios': [3, 1]}, 
                             figsize=(10, 4))

ax1.scatter(x, y)
ax2.bar(x, y)

plt.tight_layout()

我希望能够使用
fig,ax=plt.subplot(x,y,…)
code格式。噢,哇。谢谢,这正是我想要的。我不明白grid_spec kwargs在子批调用中应该做什么,但您的示例确实澄清了这一点!