Python使用matplotlib的pie函数绘制饼状图功能示例

yipeiwu_com6年前Python基础

本文实例讲述了Python使用matplotlib的pie函数绘制饼状图功能。分享给大家供大家参考,具体如下:

matplotlib具体安装方法可参考前面一篇/post/51812.htm,具体使用代码如下:

#coding=utf8
import matplotlib as mpl
import numpy as np
import matplotlib.pyplot as plt
'''''
matplotlib.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:数组。输入的数据用于创建一个饼图。
explode:数组,可选参数,默认为None。
        如果不是None,是一个长度与x相同长度的数组,用来指定每部分的偏移量。
        例如:explode=[0,0,0.2,0,0],第二个饼块被拖出。
labels:列表,可选参数,默认为:None。
       一个字符串序列作为每个饼块的标记。
colors:数组,可选参数,默认为:None。
      用来标注每块饼图的matplotlib颜色参数序列。
      如果为None,将使用当前活动环的颜色。
autopct:默认是None,字符串或函数,可选参数。
        如果不是None,是一个字符串或函数用带有数值饼图标注。
pctdistance:浮点数,可选参数,默认值:0.6。
          每个饼切片的中心和通过autopct生成的文本开始之间的比例。
          如果autopct是None,被忽略。
shadow:布尔值,可选参数,默认值:False。
        在饼图下面画一个阴影。
labeldistance:浮点数,可选参数,默认值:1.1。
            被画饼标记的直径。
startangle:浮点类型,可选参数,默认:None。
          如果不是None,从x轴逆时针旋转饼图的开始角度。
radius:浮点类型,可选参数,默认为:None。
      饼图的半径,如果半径是None,将被设置成1。
counterclock:布尔值,可选参数,默认为:None。
            指定指针方向,顺时针或者逆时针。
wedgeprops:字典类型,可选参数,默认值:None。
            参数字典传递给wedge对象用来画一个饼图。
            例如:wedgeprops={'linewidth':3}设置wedge线宽为3。
textprops:字典类型,可选参数,默认值为:None。
          传递给text对象的字典参数。
center:浮点类型的列表,可选参数,默认值:(0,0)。
      图标中心位置。
frame:布尔类型,可选参数,默认值:False。
      如果是true,绘制带有表的轴框架。
rotatelabels:布尔类型,可选参数,默认为:False。
          如果为True,旋转每个label到指定的角度。
返回值:
patches:列表。matplotlib.patches.Wedge实例列表。
text:列表。matplotlib.text.Text实例label的列表。
autotexts:列表。A是数字标签的Text实例列表。
          仅当参数autopct不为None时才返回。
'''
#设置字体样式
mpl.rcParams['font.family']='sans-serif'
mpl.rcParams['font.sans-serif']=[u'SimHei']
#随机整数从1-11,随机分成五部分
data=np.random.randint(1,11,5)
#设置第二个饼块的偏移量是0.2
plt.pie(data,explode=[0,0,0.2,0,0])
plt.title(u"www.jb51.net 饼图")
plt.show()

运行效果:

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

python中的对象拷贝示例 python引用传递

何谓引用传递,我们来看一个C++交换两个数的函数: 复制代码 代码如下:void swap(int &a, int &b){    int temp;&nb...

python实现学生信息管理系统

继上篇博客Python实现简易通讯录后,我就想写一个复杂点的学生信息管理系统,这次实现的功能有 1.学生信息的录入管理;   2.学生选课操作;   3.学生选课情况查询; 这次仍然...

新手如何发布Python项目开源包过程详解

新手如何发布Python项目开源包过程详解

本文假设你在 GitHub 上已经有一个想要打包和发布的项目。 第 0 步:获取项目许可证 在做其他事之前,由于你的项目要开源,因此应该有一个许可证。获取哪种许可证取决于项目包的使用方式...

Python File readlines() 使用方法

Python File readlines() 使用方法

概述 readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表,该列表可以由 Python 的 for... in ... 结构进行处理。 如果碰到结束符 EOF 则返...

Python实现基于POS算法的区块链

Python实现基于POS算法的区块链

区块链中的共识算法 在比特币公链架构解析中,就曾提到过为了实现去中介化的设计,比特币设计了一套共识协议,并通过此协议来保证系统的稳定性和防攻击性。 并且我们知道,截止目前使用最广泛,...