首页 > 技术文章 > Python matplotlib绘制圆环图

lcl-cn 2021-11-29 21:07 原文

一、语法和参数简介

plt.pie(x2,labels=labels, autopct = '%0.2f%%',
        shadow= False, startangle =0,labeldistance=labeldistance,pctdistance=pctdistance,
        radius=1.1,counterclock=False,wedgeprops=dict(width=0.4,edgecolor='w'))
#plt.pie(x1,shadow= False, startangle =90,labeldistance=labeldistance,radius=0.7,wedgeprops=dict(width=0.3,edgecolor='w'))

''' 
explode 饼图中每一块离圆心的距离  explode=[0,0,0,0.06]
autopct 控制饼图中数值的百分比格式 autopct = '%0.2f%%'
colors  饼图中每一块的颜色
labels  饼图中每一块的标签 labels=["我的店铺1","我的店铺2","我的店铺3","我的店铺4"]
shadow  饼图是否有阴影  shadow= False 或者 True
pctdistance 饼图中百分比数值距离中心的距离 pctdistance=0.8
labeldistance labels距离饼图的距离 labeldistance=1
startangle 饼图的初始角度 startangle =90
radius=1.0 饼图的半径 radius=1.1
wedgeprops 饼图内外边界属性 wedgeprops=dict(width=0.4,edgecolor='w')
textprops 饼图中文本相关属性
center 饼图中心位置
frame 是否显示饼图后面的图框 
counterclock 是否让饼图逆时针显示  counterclock=True
'''

二、完整代码

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['STZhongsong']    # 指定默认字体:解决plot不能显示中文问题
plt.rcParams['axes.unicode_minus'] = False 
x1=[1,2,3,4]
x2=[2,4,6.6,8]

labels=["我的店铺1","我的店铺2","我的店铺3","我的店铺4"]

#explode=[0,0,0,0.06]
labeldistance=1
pctdistance=0.8
plt.pie(x2,labels=labels, autopct = '%0.2f%%',
        shadow= False, startangle =0,labeldistance=labeldistance,pctdistance=pctdistance,
        radius=1.1,counterclock=False,wedgeprops=dict(width=0.4,edgecolor='w'))
#plt.pie(x1,shadow= False, startangle =90,labeldistance=labeldistance,radius=0.7,wedgeprops=dict(width=0.3,edgecolor='w'))

''' 
explode 饼图中每一块离圆心的距离  explode=[0,0,0,0.06]
autopct 控制饼图中数值的百分比格式 autopct = '%0.2f%%'
colors  饼图中每一块的颜色
labels  饼图中每一块的标签 labels=["我的店铺1","我的店铺2","我的店铺3","我的店铺4"]
shadow  饼图是否有阴影  shadow= False 或者 True
pctdistance 饼图中百分比数值距离中心的距离 pctdistance=0.8
labeldistance labels距离饼图的距离 labeldistance=1
startangle 饼图的初始角度 startangle =90
radius=1.0 饼图的半径 radius=1.1
wedgeprops 饼图内外边界属性 wedgeprops=dict(width=0.4,edgecolor='w')
textprops 饼图中文本相关属性
center 饼图中心位置
frame 是否显示饼图后面的图框 
counterclock 是否让饼图逆时针显示  counterclock=True
'''
plt.title("各店铺销量占比",loc="center")
plt.show();

三、对应效果图如下所示

 

 

 

推荐阅读