وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

طرح نوار Seaborn – آموزش و مثال

0 6
زمان لازم برای مطالعه: 6 دقیقه


معرفی

متولد دریا یکی از پرکاربردترین کتابخانه های تجسم داده در پایتون، به عنوان پسوندی است Matplotlib. این یک API ساده، بصری و در عین حال بسیار قابل تنظیم برای تجسم داده ها ارائه می دهد.

در این آموزش، روش انجام این کار را بررسی خواهیم کرد طرح یک نوار در Seaborn.

نمودارهای میله ای مقادیر عددی را نمایش می دهند روی یک محور و متغیرهای طبقه بندی روی از سوی دیگر، به شما امکان می دهد ببینید که چند مورد برای دسته های مختلف وجود دارد.

نمودارهای میله ای را می توان برای تجسم یک سری زمانی و همچنین داده های طبقه بندی استفاده کرد.

طرح یک بار در Seaborn

طراحی یک بار پلات در Seaborn به آسانی فراخوانی است barplot() تابع روی را sns به عنوان مثال، و عبور از متغیرهای طبقه‌بندی و پیوسته که می‌خواهیم تجسم کنیم:

import matplotlib.pyplot as plt
import seaborn as sns

sns.set_style('darkgrid')

x = ('A', 'B', 'C')
y = (1, 5, 3)

sns.barplot(x, y)
plt.show()

در اینجا، ما چند متغیر طبقه بندی شده در یک لیست داریم – A، B و C. ما همچنین چند متغیر پیوسته را در لیست دیگری داریم – 1، 5 و 3. سپس رابطه بین این دو در یک Bar Plot با ارسال این دو لیست به تصویر کشیده می شود sns.barplot().

این منجر به یک نمودار میله ای تمیز و ساده می شود:

طرح نوار پایه در دریا

اگرچه، بیشتر اوقات، شما با مجموعه داده هایی کار می کنید که حاوی داده های بسیار بیشتر از این هستند. گاهی اوقات، عملیاتی برای این داده ها اعمال می شود، مانند محدوده یا شمارش رخدادهای خاص.

هر زمان که با ابزارهای داده سر و کار دارید، با مقداری خطای padding مواجه خواهید شد که ممکن است از آن ناشی شود. خوشبختانه، Seaborn ما را تحت پوشش قرار داده است، و اعمال می کند نوارهای خطا برای ما به طور خودکار، همانطور که به طور پیش فرض محاسبه می کند منظور داشتن از داده هایی که ارائه می کنیم

اجازه دهید import کلاسیک مجموعه داده تایتانیک و یک Bar Plot را با داده ها از آنجا تجسم کنید:

import matplotlib.pyplot as plt
import seaborn as sns


sns.set_style('darkgrid')

titanic_dataset = sns.load_dataset("titanic")


sns.barplot(x = "sex", y = "survived", data = titanic_dataset)
plt.show()

این بار، ما تعیین کرده ایم x و y به sex و survived ستون های مجموعه داده، به جای لیست های سخت کد شده.

اگر ما print سر مجموعه داده:

print(titanic_dataset.head())

به ما خوش آمد می گوید:

   survived  pclass     sex   age  sibsp  parch     fare  ...
0         0       3    male  22.0      1      0   7.2500  ...
1         1       1  female  38.0      1      0  71.2833  ...
2         1       3  female  26.0      0      0   7.9250  ...
3         1       1  female  35.0      1      0  53.1000  ...
4         0       3    male  35.0      0      0   8.0500  ...

(5 rows x 15 columns)

هنگام تخصیص، مطمئن شوید که نام این ویژگی ها را مطابقت داده اید x و y متغیرها

در نهایت از data آرگومان و پاس در مجموعه داده ای که با آن کار می کنیم و ویژگی ها از آن استخراج می شوند. این نتیجه در:

نمودار نوار نمودار از مجموعه داده در دریا

طرح یک قطعه نوار افقی در Seaborn

برای ترسیم یک نوار پلات به صورت افقی، به جای عمودی، می توانیم به سادگی مکان های آن را تغییر دهیم x و y متغیرها

این باعث می شود که متغیر طبقه بندی رسم شود روی محور Y، که منجر به یک نمودار افقی می شود:

import matplotlib.pyplot as plt
import seaborn as sns

x = ('A', 'B', 'C')
y = (1, 5, 3)

sns.barplot(y, x)
plt.show()

این نتیجه در:

طرح نوار افقی طرح دریازاد

اگر به مثال تایتانیک برگردیم، این کار به همین روش انجام می شود:

import matplotlib.pyplot as plt
import seaborn as sns

titanic_dataset = sns.load_dataset("titanic")

sns.barplot(x = "survived", y = "class", data = titanic_dataset)
plt.show()

که منجر به:

نمودار نوار افقی نمودار از مجموعه داده دریازاد

تغییر رنگ طرح نوار در Seaborn

تغییر رنگ میله ها نسبتاً آسان است. این color آرگومان یک رنگ Matplotlib را می پذیرد و آن را برای همه عناصر اعمال می کند.

بیایید آنها را تغییر دهیم blue:

import matplotlib.pyplot as plt
import seaborn as sns

x = ('A', 'B', 'C')
y = (1, 5, 3)

sns.barplot(x, y, color='blue')
plt.show()

این نتیجه در:

تغییر رنگ طرح نوار در دریا

یا، بهتر است، شما می توانید تنظیم کنید palette استدلال، که می پذیرد طیف گسترده ای از پالت ها. یک مورد بسیار رایج است hls:

import matplotlib.pyplot as plt
import seaborn as sns

titanic_dataset = sns.load_dataset("titanic")

sns.barplot(x = "embark_town", y = "survived", palette = 'hls', data = titanic_dataset)
plt.show()

این نتیجه در:

مجموعه پالت رنگ در طرح نوار دریا

طرح نوار گروه بندی شده در Seaborn

گروه بندی میله ها در قطعه ها یک عملیات رایج است. فرض کنید می‌خواهید برخی از داده‌های رایج مانند میزان بقای مسافران را مقایسه کنید، اما می‌خواهید آنها را با معیارهایی گروه‌بندی کنید.

ما ممکن است بخواهیم رابطه مسافرانی را که زنده مانده اند و به طبقات (اول، دوم و سوم) جدا شده اند، تجسم کنیم، اما همچنین عاملی را در نظر بگیریم که از کدام شهر سوار شده اند.

این مقدار کمی از اطلاعات در یک طرح است، و به راحتی می توان همه آنها را در یک نوار ساده قرار داد.

برای گروه بندی نوارها با هم، از hue بحث و جدل. از نظر فنی، همانطور که از نام آن پیداست، hue استدلال به Seaborn می گوید که چگونه میله ها را رنگ آمیزی کند، اما در رنگ آمیزی process، داده های مرتبط را با هم گروه بندی می کند.

بیایید نگاهی به مثالی بیندازیم که در مورد آن بحث کردیم:

import matplotlib.pyplot as plt
import seaborn as sns

titanic_dataset = sns.load_dataset("titanic")

sns.barplot(x = "class", y = "survived", hue = "embark_town", data = titanic_dataset)
plt.show()

این نتیجه در:

طرح نوار گروه بندی شده در دریا

اکنون، نوارهای خطا برای کوئینستون داده ها بسیار بزرگ هستند این نشان می دهد که داده ها روی مسافرانی که زنده ماندند و از آنجا سوار شدند کوئینستون برای کلاس اول و دوم بسیار متفاوت است.

سفارش میله های گروه بندی شده در یک قطعه بار با Seaborn

می‌توانید ترتیب نوارها را از ترتیب پیش‌فرض (هر آنچه Seaborn فکر می‌کند منطقی‌تر است) را به چیزی که می‌خواهید برجسته یا کاوش کنید تغییر دهید.

این کار از طریق order آرگومان، که لیستی از مقادیر و ترتیبی که می خواهید آنها را در آن قرار دهید را می پذیرد.

مثلا تا الان کلاس ها را از اول تا سوم سفارش می داد. اگر بخواهیم برعکس این کار را انجام دهیم چه؟

import matplotlib.pyplot as plt
import seaborn as sns

titanic_dataset = sns.load_dataset("titanic")

sns.barplot(x = "class", y = "survived", hue = "embark_town", order = ("Third", "Second", "First"), data = titanic_dataset)
plt.show()

اجرای این کد نتیجه می دهد:

سفارش قطعات نوار گروه بندی شده در دریا

فاصله اطمینان را تغییر دهید روی طرح نوار دریای

همچنین می‌توانید به راحتی با تنظیم فاصله اطمینان را بررسی کنید ci بحث و جدل.

برای مثال، می توانید با تنظیم آن، آن را خاموش کنید None، یا از انحراف استاندارد به جای میانگین با تنظیم استفاده کنید sd، یا حتی یک اندازه درپوش قرار دهید روی نوارهای خطا برای اهداف زیبایی شناختی با تنظیم capsize.

بیایید کمی با ویژگی فاصله اطمینان بازی کنیم:

import matplotlib.pyplot as plt
import seaborn as sns

titanic_dataset = sns.load_dataset("titanic")

sns.barplot(x = "class", y = "survived", hue = "embark_town", ci = None, data = titanic_dataset)
plt.show()

اکنون نوارهای خطای قبلی ما را حذف می کند:

تغییر فاصله اطمینان میله های خطا در دریا

یا، می‌توانیم از انحراف استاندارد برای نوارهای خطا استفاده کنیم و اندازه سرپوش را تعیین کنیم:

import matplotlib.pyplot as plt
import seaborn as sns

titanic_dataset = sns.load_dataset("titanic")

sns.barplot(x = "class", y = "survived", hue = "who", ci = "sd", capsize = 0.1, data = titanic_dataset)
plt.show()

میله های خطا را از طرح نوارهای دریایی حذف کنید

نتیجه

در این آموزش، ما چندین روش را برای ترسیم یک نوار با استفاده از Seaborn و Python بررسی کرده‌ایم. ما با طرح‌های ساده و نمودارهای افقی شروع کرده‌ایم و سپس به سفارشی‌سازی آنها ادامه دادیم.

ما روش تغییر رنگ میله ها، گروه بندی آنها را با هم، ترتیب آنها و تغییر فاصله اطمینان را توضیح داده ایم.

اگر به تجسم داده‌ها علاقه دارید و نمی‌دانید از کجا شروع کنید، حتماً ما را بررسی کنید بسته کتاب روی تجسم داده ها در پایتون:

تجسم داده ها در پایتون با Matplotlib و Pandas کتابی است که طراحی شده است تا مبتدیان مطلق را با دانش پایه پایتون به Pandas و Matplotlib ببرد و به آنها اجازه دهد پایه ای قوی برای کار پیشرفته با این کتابخانه ها بسازند – از طرح های ساده گرفته تا طرح های سه بعدی متحرک با دکمه های تعاملی.

این به عنوان یک راهنمای عمیق عمل می کند که همه چیزهایی را که باید در مورد پانداها و Matplotlib بدانید، از جمله روش ساخت انواع طرح هایی که در خود کتابخانه تعبیه نشده اند را به شما آموزش می دهد.

تجسم داده ها در پایتون، کتابی برای توسعه دهندگان پایتون مبتدی تا متوسط، شما را در دستکاری ساده داده ها با پانداها راهنمایی می کند، کتابخانه های ترسیم هسته ای مانند Matplotlib و Seaborn را پوشش می دهد و به شما نشان می دهد که چگونه از کتابخانه های اعلامی و تجربی مانند Altair استفاده کنید. به طور خاص، در طول ۱۱ فصل، این کتاب ۹ کتابخانه پایتون را پوشش می‌دهد: Pandas، Matplotlib، Seaborn، Bokeh، Altair، Plotly، GGPlot، GeoPandas و VisPy.

این به عنوان یک راهنمای عملی و منحصر به فرد برای تجسم داده ها، در مجموعه ای از ابزارهایی که ممکن است در حرفه خود استفاده کنید، عمل می کند.

(برچسب‌ها به ترجمه)# python



منتشر شده در 1403-01-14 05:41:04

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید