如何使用 python 从 csv 文件创建饼图

how to create a pie chart from csv file using python

我有 this CSV data file,我正在尝试使用这些数据制作饼图

我是初学者python,不明白如何使用三列创建饼图,请帮助!

工作解决方案代码会更有帮助!

我的代码:

import pandas as pd
import matplotlib.pyplot as plt 

df = pd.read_csv ('chart_work.csv')

product_data = df["Product Name;"]   
bug_data = df["Number Of Bugs"]                      
colors = ["#1f77b4", "#ff7f0e", "#2ca02c", "#d62728", "#8c564b"]    

plt.pie(bug_data , labels=product_data , colors=colors,
autopct='%1.1f%%', shadow=True, startangle=140)

plt.show()

这段代码输出的饼图失真了,有帮助吗?

我得到的图表:

饼图不会 'know' 您希望在图表中对具有相同产品名称的所有项目进行分组和汇总。所以你必须先这样做:

df = df.groupby(["Product Name;"]).sum()

这会将产品名称列设置为 df 的索引,因此请将您的 product_data 列选择更改为:

product_data = df.index   

这个很简单。

import pandas as pd
from matplotlib.pyplot import pie, axis, show
%matplotlib inline

df = pd.read_csv ('chart_work.csv')

sums = df.groupby(df["Product Name;"])["Number Of Bugs"].sum()
axis('equal');
pie(sums, labels=sums.index);
show()

import matplotlib.pyplot as plt
sizes=[89,80,90,100,75]
lables=["swetha","yokesh","iswarya","ranjeeth","deepika"]
plt.pie(sizes,lables=lables,autopct="%.2f")
plt.axes().set_aspect("equal")
plt.show()