Python matplotlib绘制饼状图功能示例

yipeiwu_com6年前Python基础

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

一 代码

import numpy as np
import matplotlib.pyplot as plt
#The slices will be ordered and plotted counter-clockwise.
labels ='Frogs','Hogs','Dogs','Logs'
sizes =[15,30,45,10]
colors =['yellowgreen','gold','#FF0000','lightcoral']
#使饼状图中第2片和第4片裂开
explode =(0,0.1,0,0.1)
fig = plt.figure()
ax = fig.gca()
ax.pie(np.random.random(4), explode=explode, labels=labels, colors=colors,
autopct='%1.1f%%', shadow=True, startangle=90,
radius=0.25, center=(0,0), frame=True)
ax.pie(np.random.random(4), explode=explode, labels=labels, colors=colors,
autopct='%1.1f%%', shadow=True, startangle=90,
radius=0.25, center=(1,1), frame=True)
ax.pie(np.random.random(4), explode=explode, labels=labels, colors=colors,
autopct='%1.1f%%', shadow=True, startangle=90,
radius=0.25, center=(0,1), frame=True)
ax.pie(np.random.random(4), explode=explode, labels=labels, colors=colors,
autopct='%1.1f%%', shadow=True, startangle=90,
radius=0.25, center=(1,0), frame=True)
#设置坐标轴刻度
ax.set_xticks([0,1])
ax.set_yticks([0,1])
#设置坐标轴刻度上显示的标签
ax.set_xticklabels(["Sunny","Cloudy"])
ax.set_yticklabels(["Dry","Rainy"])
#设置坐标轴跨度
ax.set_xlim((-0.5,1.5))
ax.set_ylim((-0.5,1.5))
#设置纵横比相等
ax.set_aspect('equal')
plt.show()

二 运行结果

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

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

相关文章

在Python的setuptools框架下生成egg的教程

本文介绍了 setuptools 框架的内容,它是 PEAK 的一个副项目,它提供了比 distutils 更加简单的包管理和发行功能。 开始 setuptools 模块很会 “规避”。...

python+matplotlib绘制饼图散点图实例代码

python+matplotlib绘制饼图散点图实例代码

本文是从matplotlib官网上摘录下来的一个实例,实现的功能是Python+matplotlib绘制自定义饼图作为散点图的标记,具体如下。 首先看下演示效果 实例代码: imp...

python迭代dict的key和value的方法

迭代dict的key和value 我们了解了如何迭代 dict 的key和value,那么,在一个 for 循环中,能否同时迭代 key和value?答案是肯定的。 首先,我们看看 di...

详解supervisor使用教程

详解supervisor使用教程

A Process Control System 使用b/s架构、运行在类Unix系统上一个进程监控管理系统它可以使进程以daemon方式运行,并且一直监控进程,在意外退出时能自动重启进...

python+pyqt5实现图片批量缩放工具

python+pyqt5实现图片批量缩放工具

批量修改图片大小好像用PS也可以,不过我不会,程序猿就用程序来解决。 这段时间学了下Python,很强大,之前一些不知道怎么处理的东西在Python里面都能找到解决方法。 工具界面如下...