Python学习笔记第六十八天(Matplotlib 饼图)

这篇具有很好参考价值的文章主要介绍了Python学习笔记第六十八天(Matplotlib 饼图)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Matplotlib 饼图

饼图(Pie Chart)是一种常用的数据可视化图形,用来展示各类别在总体中所占的比例。

我们可以使用 pyplot 中的 pie() 方法来绘制饼图。

pie() 方法语法格式如下:

matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False,
 					labeldistance=1.1, startangle=0, radius=1, counterclock=True, wedgeprops=None, textprops=None, 
 					center=0, 0, frame=False, rotatelabels=False, *, normalize=None, data=None)[source]

参数说明:

  • x:浮点型数组或列表,用于绘制饼图的数据,表示每个扇形的面积。

  • explode:数组,表示各个扇形之间的间隔,默认值为0。

  • labels:列表,各个扇形的标签,默认值为 None。

  • colors:数组,表示各个扇形的颜色,默认值为 None。

  • autopct:设置饼图内各个扇形百分比显示格式,%d%% 整数百分比,%0.1f 一位小数, %0.1f%% 一位小数百分比, %0.2f%% 两位小数百分比。

  • labeldistance:标签标记的绘制位置,相对于半径的比例,默认值为 1.1,如 <1则绘制在饼图内侧。

  • pctdistance::类似于 labeldistance,指定 autopct 的位置刻度,默认值为 0.6。

  • shadow::布尔值 True 或 False,设置饼图的阴影,默认为 False,不设置阴影。

  • radius::设置饼图的半径,默认为 1。

  • startangle::用于指定饼图的起始角度,默认为从 x 轴正方向逆时针画起,如设定 =90 则从 y 轴正方向画起。

  • counterclock:布尔值,用于指定是否逆时针绘制扇形,默认为 True,即逆时针绘制,False 为顺时针。

  • wedgeprops :字典类型,默认值 None。用于指定扇形的属性,比如边框线颜色、边框线宽度等。例如:wedgeprops={‘linewidth’:5} 设置 wedge 线宽为5。

  • textprops :字典类型,用于指定文本标签的属性,比如字体大小、字体颜色等,默认值为 None。

  • center :浮点类型的列表,用于指定饼图的中心位置,默认值:(0,0)。

  • frame :布尔类型,用于指定是否绘制饼图的边框,默认值:False。如果是 True,绘制带有表的轴框架。

  • rotatelabels :布尔类型,用于指定是否旋转文本标签,默认为 False。如果为 True,旋转每个 label 到指定的角度。
    data:用于指定数据。如果设置了 data 参数,则可以直接使用数据框中的列作为 x、labels 等参数的值,无需再次传递。

除此之外,pie() 函数还可以返回三个参数:

  • wedges:一个包含扇形对象的列表。

  • texts:一个包含文本标签对象的列表。

  • autotexts:一个包含自动生成的文本标签对象的列表。

绘制饼图

以下实例我们简单实用 pie() 来创建一个饼图:

实例
import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])

plt.pie(y)
plt.show()

设置饼图各个扇形的标签与颜色

# 实例 2
import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])

plt.pie(y,
        labels=['A','B','C','D'], # 设置饼图标签
        colors=["#d5695d", "#5d8ca8", "#65a479", "#a564c9"], # 设置饼图颜色
       )
plt.title("饼图各个扇形的标签与颜色") # 设置标题
plt.show()

设置饼图的分离扇形

突出显示分离的扇形,并格式化输出百分比(3D效果)

# 实例 3
import matplotlib.pyplot as plt

# 数据
sizes = [15, 30, 45, 10]

# 饼图的标签
labels = ['A', 'B', 'C', 'D']

# 饼图的颜色
colors = ['yellowgreen', 'gold', 'lightskyblue', 'lightcoral']

# 突出显示第二个扇形
explode = (0, 0.1, 0, 0)

# 绘制饼图
plt.pie(sizes, explode=explode, labels=labels, colors=colors,
        autopct='%1.1f%%', shadow=True, startangle=90)

# 标题
plt.title("3D分离散形")

# 显示图形
plt.show()

我们定义了一个包含 4 个元素的列表 sizes,它表示各个类别在总体中所占的比例。然后,我们定义了一个包含 4 个元素的列表 labels,它表示各个类别的标签。接下来,我们定义了一个包含 4 个元素的列表 colors,它表示每个类别的颜色。然后,我们定义了一个包含 4 个元素的元组 explode,它用来指定是否突出某个扇形。接着,我们调用 plt.pie 函数来绘制饼图,其中传入了上述参数。最后,我们添加了一个标题,并调用 plt.show() 来显示图形。

显示分离的扇形,并格式化输出百分比(2D效果)

# 实例 4
import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])

plt.pie(y,
        labels=['A','B','C','D'], # 设置饼图标签
        colors=["#d5695d", "#5d8ca8", "#65a479", "#a564c9"], # 设置饼图颜色
        explode=(0, 0.2, 0, 0), # 第二部分突出显示,值越大,距离中心越远
        autopct='%.2f%%', # 格式化输出百分比
       )
plt.title("2D分离散形")
plt.show()

注意:默认情况下,第一个扇形的绘制是从 x 轴开始并逆时针移动

后记

今天学习的是Python Matplotlib 饼图学会了吗。 今天学习内容总结一下:文章来源地址https://www.toymoban.com/news/detail-721694.html

  1. 绘制饼图
  2. 设置饼图各个扇形的标签与颜色
  3. 设置饼图的分离扇形

到了这里,关于Python学习笔记第六十八天(Matplotlib 饼图)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++学习第十八天----switch语句

    1. ?:运算符         条件运算符,又叫三元运算符;         该运算符的通用格式为:                 expression1?expression2 :expression3;         意义是假如1为true,则整个条件表达式的值为2的值,否则为3的值; 2.switch语句         通用格式为:            

    2024年02月11日
    浏览(40)
  • 第五十八天学习记录:C语言进阶:文件操作1

    在程序设计中,一般有两种文件:程序文件、数据文件 程序文件 包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(windows环境后缀为.exe)。 数据文件 文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件

    2024年02月07日
    浏览(41)
  • 《微信小程序开发从入门到实战》学习六十八

    6.6.1 网络API 使用wx.request接口可以发起网络请求。该接口接受一个Object参,参数支持属性如下所示: url(必填):开发者服务器地址 data:请求的参数,类型为string/object/ArrayBuffer header:设置请求的header。header不能设置Referer。 method:HTTP请求方法,支持OPTIONS/GET(默认值)/HEAD/POST

    2024年02月03日
    浏览(36)
  • 第六十五天学习记录:高等数学:函数与极限(宋浩板书)

    C语言学习后,曾为先学C++还是数据结构纠结了半天。在看数据结构前言的时候,发现学习数据结构之前还需要一定的数学基础。虽然涉及到的数学基础不多,但想到以前大学高数,现代不是60分万岁就是不到80分,好像就概率论稍微了解得多一些,因为那个时候玩游戏会用到

    2024年02月08日
    浏览(39)
  • Python学习笔记(十八)————python包相关

    目录 (1)python包作用 (2)自定义python包  (3)导入自定义包 方式一: 方式二:  (4)导入第三方包 ①pip安装 ②PyCharm安装 (1)python包作用 基于 Python 模块,我们可以在编写代码的时候,导入许多外部代码来丰富功能。 但是,如果 Python 的模块太多了 ,就可能造成一定

    2024年02月13日
    浏览(56)
  • 算法训练第五十八天

    总结:今日事单调栈的开端,还是挺巧妙的。 496. 下一个更大元素 I - 力扣(LeetCode) 代码: 739. 每日温度 - 力扣(LeetCode)

    2024年02月09日
    浏览(34)
  • 代码随想录第四十八天

    题目链接 : 打家劫舍I 自己的思路 :想不太出来递推公式!!!! 正确思路 :这个题主要是看是否偷第下标为i的房间;直接动规五部曲:1、dp数组的含义:dp[i]表示从下标0到下标i(包括下标i,但不一定偷下标i)所能偷到的最大金钱数;2、递推公式:分为偷下标i和不偷下标

    2024年02月12日
    浏览(46)
  • Python学习笔记(11-2):matplotlib绘图——图形绘制函数

    因为部分图形绘制函数共用了一套参数体系,在颜色、曲线形状等部分的使用方式也是一致的。所以,在讲解各类图形绘制之前,我们整体性地对各类通用参数进行一个整理,并在此基础上对于颜色(color)、数据点标记(marker)和曲线形式(linestyle)等几个通用参数进行相

    2024年02月06日
    浏览(58)
  • 算法第十八天-实现Trie(前缀树)

    本文是前缀入门教程 从二叉树说起 前缀树,也是一种树。为了理解前缀树,我们先从二叉树说起。常见的二叉树结构是下面这样子的: 可以看到一个树的节点包含了三个元素:该节点本身的值,左子树的指针,右子树的指针。二叉树可视化是下面这样子的: 二叉树的每个节

    2024年01月18日
    浏览(33)
  • 算法第十八天-打家劫舍Ⅱ

    [打家劫舍Ⅱ]是说两个相邻的房间不能同时偷,并且首尾两个房间是相邻的(不能同时偷首尾房间) 明显是基于[打家劫舍Ⅰ]做的升级。[打家劫舍Ⅰ]也是说两个相邻的房间不能同时偷,但是首尾房间不是相邻的(可以同时偷首尾房间) 所以,我们先从[打家劫舍Ⅰ]开始说起。

    2024年01月17日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包