ভূমিকা
Matplotlib একই গ্রাফে একাধিক প্ল্যাট যোগ করার সুযোগ দেয়। এই টিউটোরিয়ালে আমি দেখাব কীভাবে একই প্লটে ডেটা উপস্থাপন করবেন, দুটি ভিন্ন অক্ষ (axes) ব্যবহার করে।
কীভাবে করবেন
১. Matplotlib ইনস্টল করুন
pip install matplotlib
import matplotlib.pyplot as plt
২. ডেটা প্রস্তুত করুন
import matplotlib.pyplot as plt
# ডেটা প্রস্তুতি (আমি নকল ডেটা ব্যবহার করলাম, কোনো 정확তা নেই)
mobile = ['Iphone', 'Galaxy', 'Pixel']
# ৪ কোয়ার্টারের মোবাইল ইউনিট বিক্রয় (মিলিয়ন 단위로)
units_sold = (
('2016', 12, 8, 6),
('2017', 14, 10, 7),
('2018', 16, 12, 8),
('2019', 18, 14, 10),
('2020', 20, 16, 5),
)
৩. ডেটা বিভক্ত করুন প্রতিটি কোম্পানির জন্য
# ডেটা প্রস্তুতি - ডেটা বিভক্ত করা
Years, IPhone_Sales, Galaxy_Sales, Pixel_Sales = zip(*units_sold)
# পজিশন সেট করুন
Position = list(range(len(units_sold)))
# বারের প্রস্থ সেট করুন
Width = 0.2
৪. প্রথম সাবপ্লট তৈরি করুন
plt.subplot(2, 1, 1)
৫. IPhone বিক্রয়ের বার গ্রাফ তৈরি করুন
Iphone = plt.bar(Position, IPhone_Sales, color='green')
plt.ylabel('IPhone Sales')
plt.xticks(Position, Years)
৬. দ্বিতীয় Y অক্ষ যোগ করুন Samsung Galaxy বিক্রয়ের জন্য
plt.twinx()
Galaxy = plt.plot(Position, Galaxy_Sales, 'o-', color='blue')
plt.ylabel('Galaxy Sales')
plt.xticks(Position, Years)
৭. Google Pixel বিক্রয় প্লট করুন
plt.subplot(2, 1, 2)
plt.plot(Position, Pixel_Sales, color='yellow')
plt.gca().set_ylim(ymin=0)
plt.xticks(Position, Years)
plt.show()
৮. সম্পূর্ণ কোড এবং চার্ট সংরক্ষণ
import matplotlib.pyplot as plt
# ডেটা প্রস্তুতি
mobile = ['Iphone', 'Galaxy', 'Pixel']
units_sold = (
('2016', 12, 8, 6),
('2017', 14, 10, 7),
('2018', 16, 12, 8),
('2019', 18, 14, 10),
('2020', 20, 16, 5),
)
# ডেটা বিভক্ত করা
Years, IPhone_Sales, Galaxy_Sales, Pixel_Sales = zip(*units_sold)
Position = list(range(len(units_sold)))
Width = 0.2
plt.subplot(2, 1, 1)
Iphone = plt.bar(Position, IPhone_Sales, color='green')
plt.ylabel('IPhone Sales')
plt.xticks(Position, Years)
plt.twinx()
Galaxy = plt.plot(Position, Galaxy_Sales, 'o-', color='blue')
plt.ylabel('Galaxy Sales')
plt.xticks(Position, Years)
plt.subplot(2, 1, 2)
plt.plot(Position, Pixel_Sales, color='yellow')
plt.ylabel('Pixel Sales')
plt.gca().set_ylim(ymin=0)
plt.xticks(Position, Years)
# plt.show()
plt.savefig('CombiningGraphs.png', dpi=72)