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

yipeiwu_com7年前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程序设计入门(5)类的使用简介

一、类的定义和使用 python定义一个类的基本语法是: 复制代码 代码如下:class classname([基类一,基类二...]):     [def...

python查看zip包中文件及大小的方法

本文实例讲述了python查看zip包中文件及大小的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/env python import zipfile z =...

python多线程socket编程之多客户端接入

python多线程socket编程之多客户端接入

Python中实现socket通信的服务端比较复杂,而客户端非常简单,所以客户端基本上都是用sockct模块实现,而服务 端用有很多模块可以使用,如下: 1、客户端 #!/u...

python使用matplotlib绘制柱状图教程

python使用matplotlib绘制柱状图教程

Matplotlib的概念这里就不多介绍了,关于绘图库Matplotlib的安装方法:点击这里 小编之前也和大家分享过python使用matplotlib实现的折线图和制饼图效果,感兴趣...

Python的Tornado框架实现异步非阻塞访问数据库的示例

tornado即是一个http非阻塞服务器, 就要用起来, 我们将用到tornado框架 ,mongodb数据库 以及motor(mongodb的异步驱动).来简单实现tornado的非...