首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用自定义类别从Pandas制作饼图

使用自定义类别从Pandas制作饼图
EN

Stack Overflow用户
提问于 2021-06-26 04:58:50
回答 1查看 144关注 0票数 0

第一次询问的人道歉,如果在其他地方回答,我就是找不到它。

我有一个数据框,在一列中有一些百分比值,我想对<1%、1-2%、2-5%、5-10%和>10%的所有数据进行分组,并用这些值制作一个饼形图。我的dataframe中有一个列,它告诉我每一行进入哪个"bin“(df"Percent")。

我发现

代码语言:javascript
运行
复制
percents = df["Percent"].value_counts()
percents

N/A           127
<±1%          28
±5-10%        14
>±10%         14
±1-2%         13
±2-5%         12
Name: Percent, dtype: int64

这让我获得了所需的信息,但在我的生命中无法将数据放入拼图中(除了仅手动复制数据,这将是愚蠢的)。

EN

回答 1

Stack Overflow用户

发布于 2021-07-12 07:27:31

您可以使用Pandas plot.pie并使用labeldistancerotatelabels将类别放置在图表内,让人觉得这些类别是由饼图函数计算出的百分比值。

代码语言:javascript
运行
复制
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

np.random.seed(1245)
d = {
    'Percent': np.random.choice(['N/A', '<±1%', '±1-2%', '±2-5%', '±5-10%', '>±10%'],
                     size=208, p=[0.6105,0.1346,0.0625,0.0578,0.0673,0.0673])
}
df = pd.DataFrame(d)
print(df)

percents = df["Percent"].value_counts()
print(percents)

percents.plot.pie(labeldistance=0.5, rotatelabels=True)
plt.show()
代码语言:javascript
运行
复制
N/A       137
<±1%       22
±5-10%     14
>±10%      14
±1-2%      13
±2-5%       8
Name: Percent, dtype: int64

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68137004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档