python怎么绘制饼图_Matplotlib绘制饼图

饼图(Pie Graph)用于显示一个数据系列中各项的大小及其在各项总和中所占的比例。饼图中的数据点显示为整个饼图的百分比。饼图可以比较清楚地反映出部分与部分、部分与整体之间的比例关系。易于显示每组数据相对于总数的大小,且显示方式直观。

pyplot 中绘制饼图的函数为 pie,其语法格式如下:

matplotlib.pyplot.pie(x,explode=None,labels=None,colors=None,autopct=None,

pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,

counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False,

rotatelabels=False,hold=None,data=None)

函数中的主要参数说明如下:

x:接收 array。表示用于绘制饼图的数据,无默认;

explode:接收 array。表示指定项距离饼图圆心为 n 个半径,默认为 None;

labels:接收 array。指定每一项的名称,默认为 None;

colors:接收特定 string 或者包含颜色字符串的 array,表示饼图颜色,默认为 None;

autopct:接收特定 string,指定数值的显示方式,默认为 None;

pctdistance:接收 float,指定每一项的比例 autopct 和距离圆心的半径,默认为 0.6;

labeldistance:接收 float,指定每一项的名称 labels 和距离圆心的半径,默认为 1.1;

radius:接收 float,表示饼图的半径,默认为 1。

【例 1】绘制 2016 年城镇就业人员和乡村就业人员的饼图。

其程序代码 test1.py 如下。

# -*- coding: utf-8 -*-

import numpy as np

import matplotlib.pyplot as plt

#导入2016年就业数据

Emp_data= np.loadtxt('d:\data\Employedpopulation.csv',delimiter = ",",

usecols=(1),dtype=int)

# 设置Matplotlib正常显示中文和负号

plt.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文

plt.rcParams['axes.unicode_minus']=False # 正常显示负号

#将2016年就业数据赋值给X

X = [Emp_data[2],Emp_data[3]]

#创建一个绘图对象, 将画布设定为正方形,则绘制的饼图是正圆

plt.figure(figsize=(8, 8))

label = ['城镇就业','乡村就业'] #定义饼图的标签,标签是列表

explode = [0.01,0.01] #设定各项距离圆心的半径

#绘制饼图(数据,半径,数据对应的标签,百分数保留两位小数点)

plt.pie(X,explode = explode, labels=label,autopct='%1.2f%%')

#添加标题

plt.title("2016年城镇和乡村就业人员情况饼图")

#添加图例

plt.legend({'城镇就业','乡村就业'})

plt.savefig('d:/data/Employedpopulation_pie.png')

plt.show()

运行程序后,显示的饼图如图 1 所示。

3-20032F925112W.jpg

图 1:2016年就业人员情况饼图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值