重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
我们在运用Python制作各种图形的时候,经常需要绘制饼图。那么如何用Python绘制饼图呢?下面我给大家分享演示一下。
你所需要的网站建设服务,我们均能行业靠前的水平为你提供.标准是产品质量的保证,主要从事成都网站建设、成都网站制作、企业网站建设、移动网站建设、网页设计、成都品牌网站建设、网页制作、做网站、建网站。创新互联建站拥有实力坚强的技术研发团队及素养的视觉设计专才。
工具/材料
Pycharm
01
首先我们需要在Excel文件中准备好饼图的数据,如下图所示
02
接下来我们打开Pycharm,新建Python文件,导入Python的pandas库,利用pandas将Excel数据加载到缓存中,如下图所示
03
然后我们在导入pyplot库,运用pyplot库的pie进行饼图的绘制,如下图所示
04
接着运行程序以后我们就可以看到一张如下图所示的饼图了,但是四周的名称和Excel中的还是不太一样,接下来修改四周的名称
05
我们在运用pandas库加载Excel数据文件的时候加上index_col属性即可,如下图所示
06
这次在运行程序我们就可以看到饼图四周的名称和Excel中的一样了,如下图所示
07
接着我们在运用pyplot中的title和ylable设置饼图的标题和Y坐标轴的名称,如下图所示
08
最后运行文件就可以看到下面这个信息比较齐全的饼图了,如下图所示,到这里用Python绘制饼图就结束了
matplotlib
饼状图:
保存图片:
subplot_adjust:
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
语法:
enumerate(sequence, [start=0])
参数:
sequence -- 一个序列、迭代器或其他支持迭代对象。
start -- 下标起始位置。
返回值:
返回 enumerate(枚举) 对象。
上一课介绍了柱形图和条形图,本课将介绍另外几种统计图表。
Box Plot 有多种翻译,盒须图、盒式图、盒状图或箱线图、箱形图等,不管什么名称,它的基本结构是这样的:
这种图是由美国著名统计学家约翰·图基(John Tukey)于 1977 年发明的,它能显示出一组数据的上限、下限、中位数及上下四分位数。
为了更深入理解箱线图的含义,假设有这样一组数据:[1, 3, 5, 8, 10,11, 16, 98 ],共有 8 个数字。
首先要计算箱线图中的“四分位数”,注意不是 4 个数:
对于已经排序的数据 [1, 3, 5, 8, 10,11, 16, 98 ],下四分位数(Q1)的位置是数列中从小到大第 2.25 个数,当然是不存在这个数字的——如果是第 2 个或者第 3 个,则存在。但是,可以用下面的原则,计算出此位置的数值。
四分位数等于与该位置两侧的两个整数的加权平均数,此权重取决于相对两侧整数的距离远近,距离越近,权重越大,距离越远,权重越小,权数之和等于 1。
根据这个原则,可以分别计算本例中数列的 3 个四分位数。
在此计算基础上,还可以进一步计算四分位间距和上限、下限的数值。
先看一个简单示例,了解基本的流程。
输出结果:
这里绘制了两张箱线图,一张没有显示平均值,另外一张显示了平均值,所使用的方法就是 boxplot,其完整参数列表为:
参数很多,不要担心记忆问题,更别担心理解问题。首先很多参数都是可以“望文生义”的,再有,与以前所使用的其他方法(函数)的参数含义也大同小异。
输出结果:
所谓的“凹槽”,不是简单形状的改变,左右折线的上限区间表示了数据分布的置信区间,横线依然是上限和下限。
1、首先打开python绘制饼图表。
2、其次在python绘制饼图表中插入图标以及扇形面积。
3、最后点击添加即可。
#coding=utf-8
import numpy as np
import matplotlib.pyplot as plt
res= {
11:234,
44:565,
22:453,
33:767,
55:890,
66:67,
77:88
}
labels = []
fracs = []
for k,v in res.items():
labels.append(str(k))
fracs.append(v)
explode = [0, 0, 0, 0] # 0.1 凸出这部分,
plt.axes(aspect=1) # set this , Figure is round, otherwise it is an ellipse
# autopct ,show percet
plt.pie(x=fracs, labels=labels, explode=None, autopct='%3.1f %%',
shadow=True, labeldistance=1.1, startangle=90, pctdistance=0.6
)
'''
labeldistance,文本的位置离远点有多远,1.1指1.1倍半径的位置
autopct,圆里面的文本格式,%3.1f%%表示小数有三位,整数有一位的浮点数
shadow,饼是否有阴影
startangle,起始角度,0,表示从0开始逆时针转,为第一块。一般选择从90度开始比较好看
pctdistance,百分比的text离圆心的距离
patches, l_texts, p_texts,为了得到饼图的返回值,p_texts饼图内部文本的,l_texts饼图外label的文本
'''
plt.show()