از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
Matplotlib Bar Plot – آموزش و مثال
سرفصلهای مطلب
معرفی
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
اغلب، ممکن است بخواهیم به جای عمودی، نمودار نوار را به صورت افقی ترسیم کنیم. این به راحتی با تغییر دادن قابل دستیابی است plt.bar()
تماس با plt.barh()
زنگ زدن:
import matplotlib.pyplot as plt
x = ('A', 'B', 'C')
y = (1, 5, 3)
plt.barh(x, y)
plt.show()
این منجر به یک نمودار نوار افقی می شود:
تغییر رنگ نمودار نوار در 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()
اکنون، ما یک نوار رنگی زیبا داریم:
البته می توانید از نسخه های کوتاه یا حتی کدهای 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
هنگامی که مقادیر میانگین لیست ها را ترسیم می کنید، که یک برنامه معمول برای نوار 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
بحث و جدل. در اینجا، ما اطلاعات مربوط به نوارهای خطا را ارائه کرده ایم.
این در نهایت منجر به این می شود:
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 و 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