Вертикальная укладка графиков в порядке два на два с помощью Seaborn

#python #pandas #seaborn

#python #панды #seaborn

Вопрос:

Я хочу, чтобы графики с вертикальной укладкой располагались в порядке два на два. Я написал код, и он дает мне два горизонтальных графика, но я не знаю, как расположить следующие 2 графика под ними.

 import seaborn as sns
import pandas as pd


df = pd.read_csv('dataset.csv')
print(df.columns)


for feature in df.columns:

     data = df[feature].tolist()
     fig, ax = plt.subplots(1,2)

     sns.distplot(data, bins = 25, ax = ax[0], norm_hist = False, hist = True, kde=False).set_title(feature)
     sns.distplot(data, bins = 25, ax = ax[1], norm_hist = True, hist = True, kde=True).set_title(feature)

     plt.show()
  

Комментарии:

1. удаление подзаголовка поможет

Ответ №1:

Вам следует настроить рисунок только один раз.

Укажите столько столбцов, сколько функций имеют ваши данные. Затем вы заполняете его своими функциями

 fig, ax = plt.subplots(len(df.columns),2)

for i, feature in enumerate(df.columns):

     data = df[feature].tolist()

     sns.distplot(data, bins = 25, ax = ax[i,0], norm_hist = False, hist = True, kde=False).set_title(feature)
     sns.distplot(data, bins = 25, ax = ax[i,1], norm_hist = True, hist = True, kde=True).set_title(feature)

 plt.show()
  

Ответ №2:

просто удалите subplot и используйте plt.show в конце

это позволит расположить их один над другим