Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Loại bỏ nhãn có điều kiện trong biểu đồ tròn (pie chart) Matplotlib

Giới thiệu

Để loại bỏ nhãn khỏi biểu đồ tròn (pie chart) của Matplotlib dựa trên một điều kiện (ví dụ: chỉ hiển thị nhãn khi phần trăm > 25%), bạn có thể dùng tham số autopct với hàm lambda:

  • Thiết lập kích thước hình vẽ và padding.
  • Tạo DataFrame Pandas chứa dữ liệu.
  • Vẽ pie chart với pie(), thiết lập autopct=lambda p: format(p, '.2f') if p > 25 else None.
  • Hiển thị hình vẽ bằng show().

Ví dụ minh họa

import pandas as pd
from matplotlib import pyplot as plt

# Thiết lập kích thước hình
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# Tạo DataFrame
df = pd.DataFrame(
    {
        'activities': ['sleep', 'exercise', 'work', 'study'],
        'hours': [8, 1, 9, 4]
    }
)

# Pie chart với loại bỏ nhãn có điều kiện
df.set_index('activities').plot.pie(y='hours', legend=False,
    autopct=lambda p: format(p, '.2f') if p > 25 else None)
plt.show()

Kết quả đầu ra

Biểu đồ tròn chỉ hiển thị nhãn phần trăm cho các mục > 25%:

Loại bỏ nhãn có điều kiện trong biểu đồ tròn (pie chart) MatplotlibLoại bỏ nhãn có điều kiện trong biểu đồ tròn (pie chart) Matplotlib

Nhận thấy "exercise" (1h) và "study" (4h) có phần trăm < 25% nên không hiển thị nhãn.