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中关于日期时间处理的问答集锦

如何在安装setuptools模块时不生成egg压缩包而是源码     Q:如何在安装setuptools模块时不生成egg压缩包而是源码,这样有时可以修改...

Python 模块EasyGui详细介绍

Python 模块EasyGui详细介绍 前言: 在Windows想用Python开发一些简单的界面,所以找到了很容易上手的EasyGui库。下面就分享一下简单的使用吧。 参考的链接:官...

关于numpy数组轴的使用详解

关于numpy数组轴的使用详解

概述 按照图一中aixs=0,对aixs=0上下对应的数据进行相加在学习numpy的时候,最难理解的就是轴的概念,我们知道坐标系中有轴的概念,那么两个轴是否有关联呢?为了便于理解,特写此...

python绘制中国大陆人口热力图

python绘制中国大陆人口热力图

这篇文章给出了如何绘制中国人口密度图,但是运行存在一些问题,我在一些地方进行了修改。 本人使用的IDE是anaconda,因此事先在anaconda prompt 中安装Basemap包...

Python 数据结构之旋转链表

题目描述:给定一个链表,旋转链表,使得每个节点向右移动k个位置,其中k是一个非负数 样例:给出链表1->2->3->4->5->null和k=2;返回4-...