matplotlib饼图绘制奇招

饼图

啥都不说,先绘制最简单的饼图

plt.pie(x)

x = [2,7,12]
plt.pie(x)
plt.show()

在这里插入图片描述

使用 np.info(plt.pie) 可以查看 plt.pie() 参数信息:

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)

简单介绍几个常用参数:

  1. x:表示绘图数据

  2. explode:表示每个部分与圆心偏移量,如:

    x = [2,7,12]
    plt.pie(x,explode=[0.1, 0, 0])
    plt.show()
    

    在这里插入图片描述

  3. labels:每个部分的标签,类型为List,且长度必须和数据 x 一致。

  4. colors:每个部分的颜色,一种颜色直接指明颜色(如 colors='r',这样所有部分都是同一颜色了),多种颜色用List

    例:

    x = [2,7,12]
    plt.pie(x,colors=['r','g','b'],labels=['one','two','three'])
    plt.show()
    

    在这里插入图片描述

  5. autopct:显示各个部分的比例,pct是percentage的缩写,autopct=%.0f%%表示保留到整数位并显示百分号,%.1f%%表示保留一位小数并显示百分号……

如:

x = [2,7,12]
plt.pie(x,colors=['r','g','b'],labels=['one','two','three'], autopct='%.2f%%')
plt.show()

在这里插入图片描述

  1. startangle:表示从哪个角度(不是弧度)开始绘制,默认从0度开始绘制

在这里插入图片描述

  1. counterclockwise:表示是否采用逆时针绘制,默认为 True

例如:(从90度位置开始按顺时针绘制)

x = [2,7,12]
plt.pie(x,
        colors=['r','g','b'],
        labels=['one','two','three'], 
        autopct='%.2f%%',
        startangle=90,
        counterclock=False  #采用顺时针绘制
        )
plt.show()

在这里插入图片描述

与上上一幅图对比,那幅图红绿蓝的顺序是逆时针的,这幅的红绿蓝是顺时针的;而且这幅图红色部分从90度位置开始绘制。

  1. radius:就是圆的半径,默认是1

  2. labeldistance:标签到圆心距离是半径的多少倍,默认为1.1倍,所以默认情况标签都在外部。

这里就不放图了

  1. wedgeprops:绘制环状图时用到,参数类型是个字典,如:

    wedgeprops={'width':0.3,'edgecolor':'black'}

    或者:wedgeprops=dict(width=0.3, edgecolor='black')

在这里插入图片描述

例:

x = [2,7,12]
plt.pie(x,
       colors=['r','g','b'],
       labels=['one','two','three'], 
       autopct='%.2f%%',
       startangle=90,
       counterclock=False,
       wedgeprops=dict(width=0.4, edgecolor='black'),
       )
plt.show()

在这里插入图片描述

  1. pctdistance:表示百分比标签到圆心的距离是半径的多少倍,默认为0.6,看 上面这个图,百分比标签不完全包含在各个部分内部了,这时可以修改 pctdistance的值
x = [2,7,12]
plt.pie(x,
        colors=['r','g','b'],
        labels=['one','two','three'], 
        autopct='%.2f%%',
        startangle=90,
        counterclock=False,
        wedgeprops=dict(width=0.4, edgecolor='black'),
        pctdistance=0.8                              #添加这句代码
        )
plt.show()

在这里插入图片描述
上面这些算比较常用的参数设置了,其它的就自己琢磨琢磨。
最后重申一点:
np.info() 用来查看函数信息是很方便的。
np.info() 用来查看函数信息是很方便的。
np.info() 用来查看函数信息是很方便的。
(重要的事情说三遍)
不记得了可以打开源文件跳到原函数位置查看或使用该语句。

posted @   aJream  阅读(50)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示