Matplotlib 饼图的条件标签删除


根据条件从 Matplotlib 饼图中删除标签,我们可以执行以下步骤 −

  • 设置图形尺寸并调整子图之间以及周围的填充。
  • 创建一个具有双维、大小可变且可能异构的表格数据的 Pandas 数据框。
  • 使用 pie() 方法绘制饼图,并使用标签的条件删除功能(例如,如果百分比值大于 25,则仅保留标签,否则将它们删除)。
  • 若要显示该图形,请使用 show() 方法。

示例

import pandas as pd
from matplotlib import pyplot as plt

# Set the figure size
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# Create a Pandas dataframe
df = pd.DataFrame(
   {
      'activities': ['sleep', 'exercise', 'work', 'study'],
      'hours': [8, 1, 9, 4]
   }
)

# Pie chart with conditional removal of labels
df.set_index('activities').plot.pie(y='hours', legend=False, autopct=lambda p: format(p, '.2f') if p > 25 else None)

plt.show()

输出

它将生成以下输出

请注意,仅当值百分比大于 25(根据条件)时,饼图才显示标签。由于"锻炼"和"学习"的值小于 25,因此饼图不会反映这些标签。

更新于: 20-Sep-2021

2 千 + 浏览次数

开启您的职业

通过完成课程来获得认证

开始
广告