python matplotlib画饼图

2016年12月10日 发表评论 阅读评论

画饼画使用的方法是plt.pie方法,里面有几个参数可以设置,具体后面再提,先看下代码和效果。这里以常见的几个课目的值为例,算下各个科目在饼图中占的比重。

import matplotlib.pyplot as plt
x = [4, 9, 21, 55, 30, 18]
labels = ['math', 'history', 'chemistry', 'physics', 'biology','Enrlish']
explode = [0, 0.01, 0.01, 0.02, 0.03, 0]
plt.pie(x, labels=labels, explode=explode,shadow=True,autopct='%1.1f%%',startangle=60,radius=1)
plt.show()
plt.close()

上面的代码在 jupyter notebooks 中是直接画不出图的,会提示<matplotlib.figure.Figure at 0x7efd9020e780> ,原因是需要在启动时需要指定inline参数,也可以在代码最前面加下%matplotlib inline 解决,具体执行后结果如下图:

matplotlib-pie

上面使用几个参数的意思如下:

labels  (每一块)饼图外侧显示的说明文字
explode (每一块)离开中心距离
startangle  起始绘制角度,默认图是从x轴正方向逆时针画起,如设定=90则从y轴正方向画起
shadow  是否阴影
labeldistance label绘制位置,相对于半径的比例, 如<1则绘制在饼图内侧
autopct 控制饼图内百分比设置,可以使用format字符串或者format function。'%1.1f'指小数点前后位数(没有用空格补齐)
pctdistance 类似于labeldistance,指定autopct的位置刻度
radius  控制饼图半径
返回值:
如果没有设置autopct,返回(patches, texts)
如果设置autopct,返回(patches, texts, autotexts




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.