Як відкоригувати розмір фігури сюжету seaborn


Існує два способи змінити розмір графіка морської ділянки в Python.

Перший метод можна використовувати для зміни розміру графіків «на рівні осі», таких як графіки sns.scatterplot() або sns.boxplot() :

 sns. set (rc={" figure . figsize ":( 3 , 4 )}) #width=3, #height=4

Другий метод можна використовувати для зміни розміру графіків «рівня фігур», таких як sns.lmplot() і sns.catplot() або sns.jointplot() .

Цей метод вимагає, щоб ви вказали висоту та аспект (відношення ширини до висоти) в аргументах діаграми:

 sns. lmplot (data=df, x=" var1 ", y=" var2 ",
              height= 6 , aspect= 1.5 ) #height=6, width=1.5 times larger than height

Наступні приклади показують, як використовувати ці два методи на практиці.

Спосіб 1: змініть розмір графіків на рівні осі

Наступний код показує, як створити хмару морських точок шириною 8 і висотою 4:

 import pandas as pd
import seaborn as sns

#create data
df = pd. DataFrame ({" var1 ": [25, 12, 15, 14, 19, 23, 25, 29],
                   " var2 ": [5, 7, 7, 9, 12, 9, 9, 4],
                   " var3 ": [11, 8, 10, 6, 6, 5, 9, 12]})

#define figure size
sns. set (rc={" figure . figsize ":( 8 , 4 )}) #width=8, height=4

#display scatterplot
sns. scatterplot (data=df, x=" var1 ", y=" var2 ") 

А наступний код показує, як створити коробчату діаграму Seaborn із шириною 6 і висотою 5:

 #define figure size
sns. set (rc={" figure . figsize ":( 6 , 5 )}) #width=6, height=5

#display scatterplot
sns. boxplot (data=df[" var1 "]) 

Спосіб 2: змініть розмір контурів на рівні фігури

Для графіків на рівні фігур (таких як sns.lmplot, sns.catplot, sns.jointplot тощо) необхідно вказати висоту та ширину в самій діаграмі.

Наступний код показує, як створити морський lmplot з висотою 5 і шириною в 1,5 рази більшою за висоту:

 import pandas as pd
import seaborn as sns

#createdata
df = pd. DataFrame ({" var1 ": [25, 12, 15, 14, 19, 23, 25, 29],
                   " var2 ": [5, 7, 7, 9, 12, 9, 9, 4],
                   " var3 ": [11, 8, 10, 6, 6, 5, 9, 12]})

#create lmplot
sns. lmplot (data=df, x=" var1 ", y=" var2 ",
              height= 5 , aspect= 1.5 ) #height=5, width=1.5 times larger than height

А наступний код показує, як створити спільну морську ділянку висотою 3,5. Оскільки спільний графік за замовчуванням квадратний, нам не потрібно вказувати значення аспекту:

 sns. jointplot (data=df, x=" var1 ", y=" var2 ", height= 3.5 ) 

Дивітьсядокументацію Seaborn для детального пояснення різниці між функціями рівня фігури та рівня осі.

Додаткові ресурси

Як додати право власності на ділянки Seaborn
Як змінити позначки осей на діаграмі Seaborn
Як змінити положення легенди в Seaborn

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *