কম্পিউটার

পাইথন ম্যাটপ্লটলিবের সাথে হাইলাইট করা একক পাই সহ পাই-চার্ট কীভাবে প্লট করবেন?


পরিচয়..

আপনার সবচেয়ে প্রিয় চার্ট টাইপ কি? আপনি যদি এই প্রশ্নটি ব্যবস্থাপনা বা ব্যবসায়িক বিশ্লেষককে জিজ্ঞাসা করেন, তাৎক্ষণিক উত্তর পাই চার্ট! এটি শতাংশ উপস্থাপনের একটি খুব সাধারণ উপায়।

কিভাবে করবেন..

1. কমান্ড অনুসরণ করে matplotlib ইনস্টল করুন।

pip install matplotlib

2. ম্যাটপ্লটলিব আমদানি করুন

import matplotlib.pyplot as plt

3.অস্থায়ী ডেটা প্রস্তুত করুন।

tennis_stats = (('Federer', 20),('Nadal', 20),('Djokovic', 17),('Murray', 3),)

4. পরবর্তী ধাপ হল ডেটা প্রস্তুত করা।

titles = [title for player, title in tennis_stats]
players = [player for player, title in tennis_stats]

5. প্লেয়ারের নাম হিসাবে শিরোনাম এবং লেবেল হিসাবে মান সহ পাই চার্ট তৈরি করুন৷

autopct প্যারামিটার - মানটিকে ফরম্যাট করতে যাতে এটি একটি একক দশমিক স্থানে শতাংশ হিসাবে প্রদর্শন করে। axis('equals')- পাই চার্টটি গোলাকার দেখাবে তা নিশ্চিত করতে। .show - ফলাফল গ্রাফ প্রদর্শন করতে।

দ্রষ্টব্য- এক্সিকিউটিং .show প্রোগ্রামের এক্সিকিউশন ব্লক করে। আপনি উইন্ডোটি বন্ধ করলে প্রোগ্রামটি পুনরায় শুরু হবে৷

plt.pie(titles, labels=players, autopct='%1.1f%%')
plt.gca().axis('equal')


(-1.1000000175619362,
1.1000000072592333,
-1.1090350248729983,
1.100430247887797)

পাইথন ম্যাটপ্লটলিবের সাথে হাইলাইট করা একক পাই সহ পাই-চার্ট কীভাবে প্লট করবেন?

6.গ্রাফটি দেখান৷

plt.show()

7. পাই/সেগুলির সাথে খেলার জন্য কয়েকটি আকর্ষণীয় পরামিতি রয়েছে৷ startangle - wedges/pies এর শুরু ঘোরানো।
কাউন্টারক্লক - আপনি যে দিকটি সেটআপ করতে চান, ডিফল্ট হল সত্য৷

plt.pie(titles, labels=players, startangle=60, counterclock=False,autopct='%1.1f%%')
plt.show()

পাইথন ম্যাটপ্লটলিবের সাথে হাইলাইট করা একক পাই সহ পাই-চার্ট কীভাবে প্লট করবেন?

8. এখন আমার মত কিছু মানুষের জন্য শতাংশ মানে কিছুই না. মনে রাখবেন আউটপুট গ্রাফটি এমন কাউকে পাঠানো হয়েছে যার কাছে আপনার কোডের গভীরে লুকিয়ে থাকা মানগুলির কোনও ধারণা নেই। সুতরাং শতাংশের পরিবর্তে, যা স্পষ্টতই পাই এর বিভাজন যেভাবে আমরা প্রকৃত শিরোনাম দেখাতে পারি তার থেকে স্ব-ব্যাখ্যামূলক?.

ওয়েল, এটা একটু কঠিন কারণ আপনাকে একটি কাস্টম ফাংশন লিখতে হবে। নিচে দেখুন।

শতাংশ হিসাবে কী সহ একটি অভিধান তৈরি করতে আমি একটি কাস্টম ফাংশন তৈরি করব - format_values, যাতে আমরা উল্লেখিত মান পুনরুদ্ধার করতে পারি৷

উদাহরণ

from matplotlib.ticker import FuncFormatter
total = sum(title for player, title in tennis_stats)
print(total)
values = {int(100 * title / total): title for player, title in tennis_stats}
print(values)

def format_values(percent, **kwargs):
value = values[int(percent)]
return '{}'.format(value)

# explode to seperate the pie/wedges.
explode = (0, 0, 0.1, 0.0)
plt.pie(titles, labels=players, explode=explode, autopct=format_values)

plt.show()

# the more the value the more farther it will be seperated.
explode = (0.3, 0.2, 0.0, 0.0)
plt.pie(titles, labels=players, explode=explode, autopct=format_values)


60
{33: 20, 28: 17, 5: 3}

পাইথন ম্যাটপ্লটলিবের সাথে হাইলাইট করা একক পাই সহ পাই-চার্ট কীভাবে প্লট করবেন?

([<matplotlib.patches.Wedge at 0x2279cf8dd00>,
<matplotlib.patches.Wedge at 0x2279cf9b1f0>,
<matplotlib.patches.Wedge at 0x2279cf9b8b0>,
<matplotlib.patches.Wedge at 0x2279cf9bf70>],
[Text(0.6999999621611965, 1.2124355871444568, 'Federer'),
Text(-1.2999999999999945, -1.2171478395895002e-07, 'Nadal'),
Text(0.39420486628845763, -1.0269384223966398, 'Djokovic'),
Text(1.086457194390738, -0.17207778693546258, 'Murray')],
[Text(0.44999997567505484, 0.7794228774500078, '20'),
Text(-0.7999999999999966, -7.490140551320001e-08, '20'),
Text(0.2150208361573405, -0.5601482303981671, '17'),
Text(0.5926130151222206, -0.09386061105570685, '3')])

পাইথন ম্যাটপ্লটলিবের সাথে হাইলাইট করা একক পাই সহ পাই-চার্ট কীভাবে প্লট করবেন?

অবশেষে, সবকিছু একত্রিত করা।

উদাহরণ

# imports
import matplotlib.pyplot as plt
from matplotlib.ticker import FuncFormatter

# prepare data
tennis_stats = (('Federer', 20),('Nadal', 20),('Djokovic', 17),('Murray', 3),)

titles = [title for player, title in tennis_stats]
players = [player for player, title in tennis_stats]

total = sum(title for player, title in tennis_stats)
values = {int(100 * title / total): title for player, title in tennis_stats}

# custom function
def format_values(percent, **kwargs):
value = values[int(percent)]
return '{}'.format(value)

# explode to seperate the pie/wedges.
explode = (0, 0, 0.1, 0.0)
plt.pie(titles, labels=players, explode=explode, autopct=format_values)

plt.show()

পাইথন ম্যাটপ্লটলিবের সাথে হাইলাইট করা একক পাই সহ পাই-চার্ট কীভাবে প্লট করবেন?


  1. আমি কিভাবে Matplotlib পাইথনে একটি একক পয়েন্ট প্লট করতে পারি?

  2. কিভাবে ম্যাটপ্লটলিবের সাথে পাইথনে একটি 3D ঘনত্বের মানচিত্র প্লট করবেন?

  3. কিভাবে Matplotlib পাইথনে পাই চার্ট প্রদর্শন করবেন?

  4. কিভাবে matplotlib পাইথনে একটি একক গ্রাফে 3টি ভিন্ন ডেটাসেট প্লট করতে ব্যবহার করা যেতে পারে?