天天看点

数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图

导包

一定不要忘记导入我们需要的包啊!!!!

import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei']  #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False    #用来正常显示正负号
plt.show()
           

学习网站

饼图学习网站:https://www.cnblogs.com/biyoulin/p/9565350.html

饼图

  1. plt.pie()的参数
  • x:画饼图的数据,sum(x)>1,归一化;sum(x)<1,画sum(x)个圆
x = [0.3, 0.4, 0.2] #sum(x)<1
plt.pie(x)
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
y = [1, 5, 6] #sum(y)>1
plt.pie(y)
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • labels:每一块饼图外侧显示的说明文字
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • explode:每一块离开中心的距离,0:在原来的饼图里;
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • startangle:起始绘制角度,默认从x轴正方向逆时针画起,如设定为90则从y轴正方向画起
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • shadow:在饼图下回一个阴影,默认:False,即不画阴影
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • labeldistance:label标记的绘制位置,相当于半径的比例,默认值为1.1,如果小于1则绘制在饼图内侧
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • autopct:控制饼图内百分比设置,可以使用format字符串或者format function。——’%1.1f’指小数点前后位数(没有用空格补齐)
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        autopct='%1.1f') #无百分号
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        autopct='%1.1f%%') #有百分号
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • pctdistance:类似于labeldistance,指定autopct的位置刻度,默认值为0.6
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        autopct='%1.1f%%',
        pctdistance=0.8)
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • radius:控制饼图半径,默认值为1
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • counterclook:指定指针方向,默认为True逆时针
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • wedgeprops:字典类型,默认值为None,例如:wedgeprops={‘linewidth’:3}命令为设置wedge线宽为3
  • textprops:设置标签和比例文字的格式,默认值为None
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        textprops={'fontsize':'20', 'color':'lightsalmon'})
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  • center:图标中心的位置,浮点类型的列表,默认值为(0,0)
  • frame:布尔类型,默认值为False,若为True,表示绘制带有表的轴框架
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  1. 正圆
plt.pie(y, labels=["strawberry", "mango", "peach"]) 
plt.axis('equal')#显示正圆
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
  1. 组合图形
plt.pie(y, labels=["strawberry", "mango", "peach"], frame=True)
plt.xlim(-1, 1)   #设置x轴显示范围 
plt.ylim(-1, 1)   #设置y轴显示范围 
plt.grid()    #显示坐标网格线
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        textprops={'fontsize':'20', 'color':'lightsalmon'})
plt.axis('equal')#显示正圆
plt.legend()#显示图例
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图

圆环图

x = [1, 5, 2]
plt.pie(x, labels=["strawberry", "mango", "peach"])
plt.pie([1], colors='w', radius=0.7)
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图

内嵌环形饼图

plt.figure(dpi = 200) #更加清晰
elements = ['面粉', '砂糖', '奶油', '果酱', '坚果']
a = [0.4, 0.15, 0.2, 0.1, 0.15]
b = [0.3, 0.25, 0.2, 0.1, 0.15]
colors = ['c', 'g', 'b', 'orange', 'pink']
outer_colors = colors
inner_colors = colors

wedges1, texts1, autotexts1 = plt.pie(a,
                          autopct = '%3.1f%%',
                          pctdistance = 0.85,
                          textprops = dict(color='w'),
                          colors = outer_colors,
                          wedgeprops = dict(width = 0.3, edgecolor = 'w'))
wedges2, texts2, autotexts2 = plt.pie(b,
                          radius = 0.7,
                          colors = inner_colors,
                          autopct = '%3.1f%%',
                          pctdistance = 0.75,
                          textprops = dict(color='w'),
                          wedgeprops = dict(width = 0.3, edgecolor = 'w'))
plt.axis('equal')#显示正圆
plt.legend(wedges1,
           elements,
           fontsize = 12,
           title = '配料表',
           loc = 1,
           bbox_to_anchor = (0.91, 0, 0.4, 1))
plt.title('不同果酱面包配料百分比')
           
数据可视化——Matplotlib03导包学习网站饼图圆环图内嵌环形饼图

继续阅读