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

سرور مجازی NVMe

Matplotlib Bar Plot – آموزش و مثال

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


معرفی

Matplotlib یکی از پرکاربردترین کتابخانه های تجسم داده در پایتون است. از تجسم های ساده گرفته تا پیچیده، این کتابخانه برای بیشتر افراد است.

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

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

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

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

ترسیم نقشه نوار در Matplotlib به آسانی فراخوانی است bar() تابع روی نمونه PyPlot، و عبور از متغیرهای دسته بندی و عددی که می خواهیم تجسم کنیم.

import matplotlib.pyplot as plt

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

plt.bar(x, y)
plt.show()

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

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

نمودار نوار پایه در matplotlib

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

اغلب، ممکن است بخواهیم به جای عمودی، نمودار نوار را به صورت افقی ترسیم کنیم. این به راحتی با تغییر دادن قابل دستیابی است plt.bar() تماس با plt.barh() زنگ زدن:

import matplotlib.pyplot as plt

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

plt.barh(x, y)
plt.show()

این منجر به یک نمودار نوار افقی می شود:

نمودار نوار افقی در matplotlib

تغییر رنگ نمودار نوار در Matplotlib

تغییر رنگ خود نوارها به آسانی تنظیم آن است color آرگومان با لیستی از رنگ ها اگر تعداد میله‌ها بیشتر از رنگ‌ها در لیست باشد، دوباره از رنگ اول اعمال می‌شوند:

import matplotlib.pyplot as plt

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

plt.bar(x, y, color=('red', 'blue', 'green'))
plt.show()

اکنون، ما یک نوار رنگی زیبا داریم:

تغییر رنگ نمودار نوار در matplotlib

البته می توانید از نسخه های کوتاه یا حتی کدهای HTML نیز استفاده کنید:

plt.bar(x, y, color=('red', 'blue', 'green'))
plt.bar(x, y, color=('r', 'b', 'g'))
plt.bar(x, y, color=('#ff0000', '#00ff00', '#0000ff'))
plt.show()

یا حتی می توانید یک مقدار اسکالر واحد قرار دهید تا آن را در همه نوارها اعمال کنید:

plt.bar(x, y, color='green')

تغییر رنگ نمودار نوار در matplotlib

نمودار نوار با نوارهای خطا در Matplotlib

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

برای این، بیایید یک مجموعه داده با مقادیری بسازیم، میانگین و انحراف استاندارد آنها را با NumPy محاسبه کنیم و آنها را با نوارهای خطا رسم کنیم:

import matplotlib.pyplot as plt
import numpy as np

x = np.array((4, 5, 6, 3, 6, 5, 7, 3, 4, 5))
y = np.array((3, 4, 1, 3, 2, 3, 3, 1, 2, 3))
z = np.array((6, 9, 8, 7, 9, 8, 9, 6, 8, 7))

x_mean = np.mean(x)
y_mean = np.mean(y)
z_mean = np.mean(z)

x_deviation = np.std(x)
y_deviation = np.std(y)
z_deviation = np.std(z)

bars = (x_mean, y_mean, z_mean)
bar_categories = ('X', 'Y', 'Z')
error_bars = (x_deviation, y_deviation, z_deviation)

plt.bar(bar_categories, bars, yerr=error_bars)
plt.show()

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

با استفاده از NumPy mean() و std() توابع، این یک نسیم است. سپس، مقادیر نوار را در یک بسته بندی کرده ایم bars لیست، نام نوارها برای یک تجربه کاربری خوب در bar_categories و در نهایت – مقادیر انحراف استاندارد به an error_bars فهرست

برای تجسم این موضوع، به طور منظم تماس می‌گیریم bar() تابع، عبور در bar_categories (مقادیر طبقه بندی) و bars (مقادیر پیوسته)، در کنار yerr بحث و جدل.

از آنجایی که ما به صورت عمودی رسم می کنیم، از آن استفاده می کنیم yerr بحث و جدل. اگر به صورت افقی ترسیم می کردیم، از آن استفاده می کردیم xerr بحث و جدل. در اینجا، ما اطلاعات مربوط به نوارهای خطا را ارائه کرده ایم.

این در نهایت منجر به این می شود:

نمودار نوار با نوارهای خطا در matplotlib

Plot Stacked Bar Plot در Matplotlib

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

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

در نهایت، برای رسم این متغیرها به یک محدوده شاخص نیاز داریم روی بر روی یکدیگر، در حالی که نظم نسبی خود را حفظ می کنند. این شاخص اساساً طیفی از اعداد به طول تمام گروه‌هایی است که ما داریم.

برای چیدن یک نوار روی یکی دیگر، شما استفاده کنید bottom بحث و جدل. شما مشخص کنید چیست روی را bottom از آن نوار نقشه کشیدن x در زیر y، شما تنظیم می کنید x به عنوان bottom از y.

برای بیش از یک گروه، باید مقادیر را قبل از ترسیم با هم اضافه کنید، در غیر این صورت، نمودار نوار جمع نمی شود. ما از NumPy استفاده خواهیم کرد np.add().tolist() برای اضافه کردن عناصر دو لیست و ایجاد یک لیست مجدد:

import matplotlib.pyplot as plt
import numpy as np



x = (1, 3, 2)
y = (2, 3, 3)
z = (7, 6, 8)


x_deviation = np.std(x)
y_deviation = np.std(y)
z_deviation = np.std(z)

bars = (x, y, z)
ind = np.arange(len(bars))
bar_categories = ('X', 'Y', 'Z');
bar_width = 0.5
bar_padding = np.add(x, y).tolist()

plt.bar(ind, x, yerr=x_deviation, width=bar_width)
plt.bar(ind, y, yerr=y_deviation, bottom=x, width=bar_width)
plt.bar(ind, z, yerr=z_deviation, bottom=bar_padding, width=bar_width)

plt.xticks(ind, bar_categories)
plt.xlabel("Stacked Bar Plot")

plt.show()

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

نمودار نوار انباشته در matplotlib

نتیجه

در این آموزش، روش‌های مختلفی را برای ترسیم نمودار نواری با استفاده از Matplotlib و Python بررسی کرده‌ایم. ما همچنین روش محاسبه و اضافه کردن نوارهای خطا و همچنین نوارهای پشته را پوشش داده ایم روی روی هم

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

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

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

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

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

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



منتشر شده در 1403-01-14 07:51:03

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

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

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