Matplotlib画图——饼图

函数参数

[python]  view plain  copy
  1. plt.pie(x, explode=None, labels=None, colors=None,   
  2.         autopct=None, pctdistance=0.6, shadow=False,   
  3.         labeldistance=1.1, startangle=None,   
  4.         radius=None, counterclock=True, wedgeprops=None,   
  5.         textprops=None, center=(00), frame=False)  

x:指定绘图的数据;
explode:指定饼图某些部分的突出显示,即呈现爆炸式;
labels:为饼图添加标签说明,类似于图例说明;
colors:指定饼图的填充色;
autopct:自动添加百分比显示,可以采用格式化的方法显示;
pctdistance:设置百分比标签与圆心的距离;
shadow:是否添加饼图的阴影效果;
labeldistance:设置各扇形标签(图例)与圆心的距离;
startangle:设置饼图的初始摆放角度;
radius:设置饼图的半径大小;
counterclock:是否让饼图按逆时针顺序呈现;
wedgeprops:设置饼图内外边界的属性,如边界线的粗细、颜色等;
textprops:设置饼图中文本的属性,如字体大小、颜色等;
center:指定饼图的中心点位置,默认为原点
frame:是否要显示饼图背后的图框,如果设置为True的话,需要同时控制图框x轴、y轴的范围和饼图的中心位置;

代码

[python]  view plain  copy
  1. import matplotlib.pyplot as plt  
  2.   
  3. # 设置绘图的主题风格(不妨使用R中的ggplot分隔)  
  4. plt.style.use('ggplot')  
  5.   
  6. # 构造数据  
  7. edu = [0.2515,0.3724,0.3336,0.0368,0.0057]  
  8. labels = ['中专','大专','本科','硕士','其他']  
  9.   
  10. explode = [0,0.1,0,0,0]  # 用于突出显示大专学历人群  
  11. colors=['#9999ff','#ff9999','#7777aa','#2442aa','#dd5555'] # 自定义颜色  
  12.   
  13. # 中文乱码和坐标轴负号的处理  
  14. plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']  
  15. plt.rcParams['axes.unicode_minus'] = False  
  16.   
  17. # 将横、纵坐标轴标准化处理,保证饼图是一个正圆,否则为椭圆  
  18. plt.axes(aspect='equal')  
  19.   
  20. # 控制x轴和y轴的范围  
  21. plt.xlim(0,4)  
  22. plt.ylim(0,4)  
  23.   
  24. # 绘制饼图  
  25. plt.pie(x = edu, # 绘图数据  
  26.         explode=explode, # 突出显示大专人群  
  27.         labels=labels, # 添加教育水平标签  
  28.         colors=colors, # 设置饼图的自定义填充色  
  29.         autopct='%.1f%%'# 设置百分比的格式,这里保留一位小数  
  30.         pctdistance=0.8,  # 设置百分比标签与圆心的距离  
  31.         labeldistance = 1.15# 设置教育水平标签与圆心的距离  
  32.         startangle = 180# 设置饼图的初始角度  
  33.         radius = 1.5# 设置饼图的半径  
  34.         counterclock = False# 是否逆时针,这里设置为顺时针方向  
  35.         wedgeprops = {'linewidth'1.5'edgecolor':'green'},# 设置饼图内外边界的属性值  
  36.         textprops = {'fontsize':12'color':'k'}, # 设置文本标签的属性值  
  37.         center = (1.8,1.8), # 设置饼图的原点  
  38.         frame = 1 )# 是否显示饼图的图框,这里设置显示  
  39.   
  40. # 删除x轴和y轴的刻度  
  41. plt.xticks(())  
  42. plt.yticks(())  
  43. # 添加图标题  
  44. plt.title('芝麻信用失信用户教育水平分布')  
  45.   
  46. # 显示图形  

  1. plt.show()  

另:

plt.pie(x = edu, # 绘图数据  
        explode=explode, # 突出显示大专人群  
        labels=labels, # 添加教育水平标签  
        colors=colors, # 设置饼图的自定义填充色  
        autopct='%.1f%%', # 设置百分比的格式,这里保留一位小数  
        pctdistance=0.8,  # 设置百分比标签与圆心的距离  
        labeldistance = 1.15, # 设置教育水平标签与圆心的距离  
        startangle = 180, # 设置饼图的初始角度  
        radius = 1.5, # 设置饼图的半径  
        counterclock = False, # 是否逆时针,这里设置为顺时针方向  
        wedgeprops = {'linewidth': 1.5, 'edgecolor':'green'},# 设置饼图内外边界的属性值  
        textprops = {'fontsize':12, 'color':'k'}, # 设置文本标签的属性值  
        center = (1.8,1.8), # 设置饼图的原点  
        frame = 1 )# 是否显示饼图的图框,这里设置显示  

猜你喜欢

转载自blog.csdn.net/weixin_37773766/article/details/80914763