Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีแทนที่ค่า Relative ด้วย Absolute Values ใน Matplotlib Pie Chart

การแสดงค่าสัมบูรณ์แทนเปอร์เซ็นต์ใน Pie Chart

ใช้ autopct=lambda p: '{:.0f}%'.format(p * total / 100) คำนวณค่าจริงจากเปอร์เซ็นต์

ขั้นตอนหลัก

  • ตั้งค่าขนาดรูปและ padding
  • เตรียม labels, fracs, explode และคำนวณ total = sum(fracs)
  • พล็อต pie chart พร้อม autopct lambda function
  • แสดงผลด้วย show()

ตัวอย่างโค้ด

import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

labels = ('Read', 'Eat', 'Sleep', 'Repeat')
fracs = [5, 3, 4, 1]
total = sum(fracs)
explode = (0, 0.05, 0, 0)

plt.pie(fracs, explode=explode, labels=labels,
        autopct=lambda p: '{:.0f}%'.format(p * total / 100),
        shadow=True, startangle=90)
plt.show()

คำอธิบาย

p คือเปอร์เซ็นต์ที่ matplotlib คำนวณ (p = frac/total * 100) สูตร p * total / 100 = frac (ค่าจริง)

หมายเหตุ

บทความนี้คล้าย ID 1004101857 เนื้อหาเกือบเหมือนกัน