作用
饼图:用于表示不同分类的占比情况,通过弧度大小来对比各种分类。
特点:分类数据的占比情况(占比)
函数
plt.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 :(每一块)的比例,如果sum(x) > 1会使用sum(x)归一化;
labels :(每一块)饼图显示的说明文字;
labeldistance :label标记的绘制位置,相对于半径的比例,默认值为1.1, 如<1则绘制在饼图内侧;
explode :(每一块)离开中心距离;
startangle :起始绘制角度,默认图是从x轴正方向逆时针画起,如设定=90则从y轴正方向画起;
shadow :在饼图下面画一个阴影。默认值:False,即不画阴 影;
autopct :控制饼图内百分比设置,可以使用format字符串或者format function
'%1.1f’指小数点前后位数(没有用空格补齐);
pctdistance :类似于labeldistance,指定autopct的位置刻度,默认值为0.6;
radius :控制饼图半径,默认值为1;
counterclock :指定指针方向;布尔值,可选参数,默认为:True,即逆时针。将值改为False即可改为顺时针。
wedgeprops :字典类型,可选参数,默认值:None。参数字典传递给wedge对象用来画一个饼图。例如:wedgeprops={‘linewidth’:3}设置wedge线宽为3。
textprops :设置标签(labels)和比例文字的格式;字典类型,可选参数,默认值为:None。传递给text对象的字典参数。
pie各参数示例
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
labels = 'A','B','C','D'
sizes = [10,10,10,70]
plt.pie(sizes,labels=labels)
plt.title("饼图详解示例")
plt.show()
1、x:每一块饼图的比例,为必填项,如果sum(x)>1,会将多出的部分进行均分;
sizes = [10,10,30,40] #总和不是100也可以
plt.pie(sizes,labels = labels)
plt.show()
当用百分比表示,但总和小于1时,pie() 不会进行归一化,而是直接绘制出缺失一个类别的饼状图(除了0.1、0.5、0.2三个类别外,应剩余一个0.20.2的类别,以空白区绘制):
sizes = [0.1,0.5,0.2]
plt.pie(sizes,labels = ['a','b','c'])
plt.show()
2、labels : 每一块饼图外侧显示的说明文字;
sizes = [10,10,30,40]
labels = ['Mon','Tue','Fri','Sun']
plt.pie(sizes,labels = labels)
plt.show()
3.labeldistance : label绘制位置,相对于半径的比例, 如<1则绘制在饼图内侧,默认值为1.1
sizes = [10,10,30,40]
labels = ['Mon','Tue','Fri','Sun']
plt.pie(sizes,labels = labels,labeldistance=0.6)
plt.show()
4、explode : 每一块饼图 离开中心距离,默认值为(0,0),就是不离开中心;
sizes = [10,10,30,40]
labels = ['Mon','Tue','Fri','Sun']
explode = [0,0.2,0,0]
plt.pie(sizes,labels=labels,explode=explode)
plt.show()
5、colors:数组,可选参数,默认为:None;用来标注每块饼图的matplotlib颜色参数序列。如果为None,将使用当前活动环的颜色。
sizes = [10,10,30,40]
labels = ['Mon','Tue','Fri','Sun']
explode = [0,0.2,0,0]
colors = ['g','r','y','c']
plt.pie