Как изменить размер фигуры в пакете Python Seaborn

У меня возникли проблемы с увеличением размера моих сюжетных фигур с помощью Seaborn. Я использую sns.pairplot для построения столбцов кадра данных друг против друга.

    %matplotlib inline
    plt.rcParams['figure.figsize']=10,10
    columns=list(df.columns.values)
    g=sns.pairplot(df, kind='reg', x_vars=columns,y_vars = ['Column 1'])

Сюжеты заполняют данными просто отлично, но размер фигуры слишком мал. Я думал, что plot.rCParams ['figure.figsize'] будет контролировать, насколько велика цифра, но она, похоже, не вступает в силу. Я пробовал несколько разных предложений от сетевых плат, но ничего не работает.

Ответ 1

Попытайтесь поместить размер в круглые скобки, это делает трюк для меня:

plt.rcParams['figure.figsize']=(10,10)

Ответ 2

sns.pairplot "Возвращает базовый экземпляр PairGrid для дальнейшей настройки" ... например, изменение размера фигуры:

g=sns.pairplot(df, kind='reg', x_vars=columns,y_vars = ['Column 1'])
g.fig.set_size_inches(15,15)

Ответ 3

В дополнение к хорошо работающему ответу от @MartinAnderson, сам морской берег предоставляет возможность установить высоту подсетей сетки. В сочетании с aspect это определяет общий размер фигуры в зависимости от количества подсетей в сетке.

В морском <= 0.8.1:

g = sns.pairplot(..., size=10, aspect=0.6)

В морском море> = 0,9,0:

g = sns.pairplot(..., height=10, aspect=0.6)

Обратите внимание, что это относится ко всем морским функциям, которые генерируют сетку уровня фигуры, например, pairplot, relplot, catplot, lmplot и лежащую в основе PairGrid или FacetGrid.

Для других морских участков, которые непосредственно относятся к осям, решения из " Как вы меняете размер фигур, нарисованных с помощью matplotlib? будет работать нормально.

Ответ 4

Возвращаясь к Рахулу вопрос о sns.catplot(Невозможно изменить размер участка с помощью matplotlib и морского дна)

Если вы попытаетесь использовать jupyter notebook:

plt.figure(figsize=(25,20))
sns.boxplot(x='CriticRating', y='AudienceRating', data=movies)

он работает, но

sns.boxplot(x='CriticRating', y='AudienceRating', data=movies)
plt.figure(figsize=(25,20))

не работает (график очень маленький). Важно добавить строку plt.figure(figsize=(25,20)) до sns.boxplot() и включить, %matplotlib inline, чтобы отображать график в jupyter.

Ответ 5

Если мы хотим изменить только высоту или ширину, тогда мы, как показано ниже

g = sns.pairplot(df, kind = 'reg', x_vars = columns, y_vars = ['Column 1'])

g.fig.set_figheight (6)

g.fig.set_figwidth (10)