欢迎大家来到IT世界,在知识的湖畔探索吧!
之前我们使用bar和barh函数绘制了一些柱图
Python100天52: barh函数画对称柱图
Python100天46: 重新认识barh函数
python100天 58 bar 函数画柱图网络误差棒
今天继续使用pie函数画饼图
先看一下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, *, data=None)
- x:指定绘图的数据;
- explode:指定饼图某些部分的突出显示,即呈现爆炸式;
- labels:为饼图添加标签说明,类似于图例说明;
- colors:指定饼图的填充色;
- autopct:自动添加百分比显示,可以采用格式化的方法显示;
- pctdistance:设置百分比标签与圆心的距离;
- shadow:是否添加饼图的阴影效果;
- labeldistance:设置各扇形标签(图例)与圆心的距离;
- startangle:设置饼图的初始摆放角度;
- radius:设置饼图的半径大小;
- counterclock:是否让饼图按逆时针顺序呈现;
- wedgeprops:设置饼图内外边界的属性,如边界线的粗细、颜色等;
- textprops:设置饼图中文本的属性,如字体大小、颜色等;
- center:指定饼图的中心点位置,默认为原点
- frame:是否要显示饼图背后的图框,如果设置为True的话,需要同时控制图框x轴、y轴的范围和饼图的中心位置;
题外话,英文学习,例如有个参数 explode的英文解释
explode : array-like, optional, default: None
If not None, is a len(x) array which specifies the fraction of the radius with which to offset each wedge.
array-like, 像什么一样的,数组
optional 可选的 , default 默认值是None
If not None
radius 半径
- 这个fraction单词可以表示
小数,分数,特意去查询 了一下一个单词有两个意义,不过仔细回想一下,小数与分数确实可以相互转换 - offset each wedge. 偏移每个楔块 ,offset 动词 抵消; 弥补; 补偿;
- wedge 楔子; 三角木; 楔形物; 用作楔子的东西,实际上饼图的并一个部分就是个楔子
代码如何写
import matplotlib.pyplot as plt
# Pie chart, where the slices will be ordered and plotted counter-clockwise:
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0) # only "explode" the 2nd slice (i.e. 'Hogs')
fig1, ax1 = plt.subplots()
ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',
shadow=True, startangle=180)
ax1.axis('equal') # Equal aspect ratio ensures that pie is drawn as a circle.
plt.show()
欢迎大家来到IT世界,在知识的湖畔探索吧!
饼图涉及几个重要的参数概念
- 每个wedge占据的比例 sizes
- t每个饼 图的名字 labels
欢迎大家来到IT世界,在知识的湖畔探索吧!labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
欢迎大家来到IT世界,在知识的湖畔探索吧!ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',
shadow=True, startangle=180)
改变一下参数explode
调节参数我们发现logs这个wedge离饼图的中心已经很远了
explode = (0, 0.1, 0, 1)
显示wedge模块的阴影控制
ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=False, startangle=90)
这样通过最简单的几个参数,就完成了一个饼图的实现,在使用API上好像是特别简单,但是要实现这些底层参数控制的逻辑是需要花费不少功夫的。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/34016.html