• Python 饼图


    matplotlib 饼图绘制函数语法

    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)    # 是否要显示饼图背后的图框,如果设置为True的话,需要同时控制图框x轴、y轴的范围和饼图的中心位置

    1、 示例1

    import matplotlib.pyplot as plt
    import numpy as np
    
    plt.rcParams['font.sans-serif'] = 'SimHei'
    plt.rcParams['axes.unicode_minus'] = False
    
    # 生成数据
    rng = np.random.RandomState(27)
    v = rng.randint(10, 50, 4)
    
    groups = ['第 {} 组' .format(i) for i in range(1, 5)]
    
    # 绘制图形
    plt.pie(v, labels=groups, autopct='%1.1f%%')
    
    plt.show()

    图形

     

    2、对上图进行优化

    代码

    import matplotlib.pyplot as plt
    import numpy as np
    
    plt.rcParams['font.sans-serif'] = 'SimHei'
    plt.rcParams['axes.unicode_minus'] = False
    
    # 生成数据
    rng = np.random.RandomState(27)
    v = rng.randint(10, 50, 4)
    
    groups = ['第 {} 组' .format(i) for i in range(1, 5)]
    offsets = [0, 0, 0, 0.07]  # 各部分离开中心点的距离
    
    # 绘制图形
    plt.pie(v, labels=groups, 
           explode=offsets,    # 设置突出数据
           autopct='%1.1f%%', # 显示百分比标签
           startangle=90,    # 摆放角度
           shadow=True)     # 显示阴影 plt.show()

    图形

     

    。。。

  • 相关阅读:
    python 学习笔记(四)(流程控制)
    python 写斐波那契数列
    python 部分术语对照表
    python 学习笔记(三)(对前两节的补充)
    python # -*- coding: utf-8 -*-
    写出更好的 JavaScript 条件语句
    PHP消息队列实现及应用
    VUE3.0 路由去掉#号
    php设计模式
    workerman 可能需要用到的函数
  • 原文地址:https://www.cnblogs.com/shanger/p/13021549.html
Copyright © 2020-2023  润新知