Я строил график рассеяния набора данных mpg из библиотеки Seaborn. Мне было интересно, если можно построить нечетное количество участков в Python?
import pandas as pd
import seaborn as sns
df = sns.load_dataset('mpg')
df.groupby('origin').plot.scatter(x='cylinders',y='mpg',subplots=True,layout=(2,2))
Это дает 4,1 участка, а не 2,2 участка:
Есть ли способ получить 3 субплота для США, Европы и Японии с названиями лейблов?
как показано ниже, более простым способом?
Это долгий путь:
import pandas as pd
import seaborn as sns
df = sns.load_dataset('mpg')
g = df.groupby('origin')
fig, axes = plt.subplots(2,2,figsize=(8, 4))
for i, (g_name, g_data) in enumerate(g): # axes.flat also works
ax = g_data.plot.scatter(x='cylinders', y='mpg', ax=axes.flatten()[i], title=g_name)
plt.tight_layout()
fig.delaxes(axes[1][1])