Проблема с отсечением метки по оси x на нескольких графиках в python

#python #matplotlib

#python #matplotlib

Вопрос:

Я работаю над созданием нескольких графиков распределения с использованием matplotlib и seaborn библиотеки.

Чтобы быть точным, я пытаюсь поместить 16 (= 4 x 4) графиков на 1 рисунке.

Дело в том, что метка по оси x выглядит обрезанной, как показано ниже.

введите описание изображения здесь

Как мне решить эту проблему?

Я написал код, как показано ниже.

 
array = aa_il.values

a = [0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3]
b = [0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]

f, axes = plt.subplots(4, 4, figsize=(15, 10), sharex=False)

for each, i, j in zip(np.unique(array[:,7])[:20], a, b):
    sns.distplot(pd.DataFrame(array[array[:,7] == each,:]).rename(columns = {9 : each})[each].astype('int64'), color="blue", ax=axes[i, j])
    
  

Ответ №1:

plt.tight_layout() должно решить вашу проблему.

Ответ №2:

вы можете просто изменить размер рисунка:

 fig, ((ax0,ax1),(ax2,ax3))=plt.subplots(nrows=2,
                                       ncols=2,
                                       figsize=(7,4))

  

это демонстративно поможет