【问题标题】:Python pie chart / Show several columns combinedPython饼图/显示多列组合
【发布时间】:2020-02-10 11:33:31
【问题描述】:

我有 2 列的数据框:

Col1-经理姓名

Col2 - 他们的利润

我想绘制一个饼图,其中我可以分别显示最赚钱的 5 位经理,并将其他人在一个切片中显示为“其他人”

【问题讨论】:

  • 到目前为止你尝试了什么?你在用熊猫吗?
  • 我使用 pandas 和 matplotlib 并没有尝试任何东西。
  • 我的回答怎么样,对你有用吗?
  • 我选择了另一种方式。谢谢你 。如果您告诉我如何在 pandas 的条形图上/下显示数据,我们将不胜感激。
  • 我认为如果您能展示您的方法或将我的答案标记为已接受会很好,因为它适用于所提出的问题。您的意思是表格形式的数据和图表吗?

标签: pandas pie-chart


【解决方案1】:

怎么样: 使用 autopct 参数自动标记饼图。

import pandas as pd
import matplotlib.pyplot as plt

data  = {'managers':['mike1','mike2','mike3','mike4','mike5','mike6','mike7'],
'profit':[110,60,40,30,10,5,5],
}

df = pd.DataFrame(data)

df = df.sort_values(by = 'profit', ascending = False)

top_5 = df.iloc[:5] 

others = df.iloc[5:]['profit'].sum()

df2 = pd.DataFrame([['others',others]], columns = ['managers','profit'])

all_data = top_5.append(df2, ignore_index=True)

all_data.index = all_data['managers']

#func to lable the pieces
def auto_func(val):
    return(round(val)) 

all_data.plot.pie(y = 'profit', autopct = auto_func)

# ax = plt.gca()

plt.show()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-14
    • 1970-01-01
    相关资源
    最近更新 更多