matplotlib画图教程系列之-饼状图

matplotlib饼状图画法介绍

先上代码:

import pandas as pd
import matplotlib.pyplot as plt
planets = pd.read_csv('planets.csv')
planets = planets.groupby('method').sum()['number'].head(4)
print(planets)
y = planets.index
x = planets.values
colors=['red','green','orange','blue']
explode = [0,0.1,0,0.1]
plt.rcParams['font.sans-serif']=['SimHei']#这两句作用为防止中文乱码
plt.rcParams['axes.unicode_minus']=False
plt.pie(x=x,labels=y,colors=colors,explode=explode,pctdistance=0.8,labeldistance=1.2,autopct='%1.1f%%',
        radius=1.2,wedgeprops={'linewidth':'1.5','edgecolor':'black'},
        textprops={'fontsize':10,'color':'black'})
plt.title('各方法统计的数量之和',fontsize=10,pad=10)
plt.show()

再来看一下结果图:
在这里插入图片描述

好了,接下来咱们先对代码进行简单的介绍,然后对饼状图中的参数进行详细表格介绍:

  1. planets = pd.read_csv(‘planets.csv’)
    planets = planets.groupby(‘method’).sum()[‘number’].head(4)
    第一句是使用pandas读取文件中的数据,第二句是按照‘method’属性进行分类统计数量总和,然后取数据的前四行。之所以取前四行是因为本数据涉及到的method 种类比较多,十好几种,我就选择了四类进行演示。
  2. plt.rcParams[‘font.sans-serif’]=[‘SimHei’]
    plt.rcParams[‘axes.unicode_minus’]=False
    这两个方法的作用就是防止图片显示时中文出现乱码。
  3. plt.pie()此方法用来绘画饼状图,下面通过表格尽心参数详细介绍
参数 数据类型 说明
x 列表 【int/float】 该数是用来计算所占百分比
labels 列表 显示各部分的标签,必须与x的列表长度一致
explode 列表【int/float】 该部分距离圆心的距离,默认为0
pctdistance int/float 百分比数据距离圆心的距离
labeldistance int/float 标签距离圆心的距离
autopct %1.1f%% 百分比的数据格式
radius int/float 半径长度
wedgeprops 字典 设置图形具体属性,如边框颜色
textprops 字典 设置图形文字的属性,大小颜色

注:
planets数据下载

发布了67 篇原创文章 · 获赞 54 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/lzx159951/article/details/104389694
今日推荐