Python 画图:饼图,箱线图

news2024/11/19 3:22:20

饼图

饼图(pie char)是一个划分为几个扇形的圆形统计图表,一般用于描述频率或百分比之间的相对关系。在饼图中,每个扇区的弧长(以及圆心角和面积)的大小与其所表示的数量呈固定比例。画饼图使用 pyplot 中的pie函数,它的基本语法如下:

pie(x, expode=None, labels=None, autopic=None, **kwargs)
x数组,每个扇区的比例
expode 可选参数,数组,每个扇区突出的大小
labels 可选参数,字符串数组,每个扇区的标签
autopct可选参数,字符串或函数,每个扇区显示的数字样式
**kwargs可选参数,定义其他属性,例如扇区阴影 shadow,起始角度 startangle 等

# 导入工具包
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontManager # 调用 matplotlib 中的字体,用于显示中文

# 这两行代码使得 pyplot 画出的图形中可以显示中文
plt.rcParams['font.sans-serif'] = ['Heiti TC'] # 黑体, 宋体:'Songti SC'
plt.rcParams['axes.unicode_minus'] = False

labels = ['果汁', '矿泉水', '绿茶', '其他', '碳酸饮料']
x = [6, 10, 11, 8, 15]
explode = [0, 0.1, 0, 0, 0]  # 突出显示第二个扇区

plt.pie(x, explode=explode, labels=labels, autopct='%.2f%%', shadow=True, startangle=90)
plt.legend()  # 显示标签
plt.show()

在这里插入图片描述

箱线图

箱线图(box plot)是一种用来显示数据统计分布情况的图形,包括数据的最大值、最小值、中位数、分位数等特征。画箱线图使用 pyplot 中的boxplot函数,它的基本语法如下:

boxplot(x, notch=false, vert=false, **kwargs)
x输入数据
notch 可选参数,是否为锯齿状的箱线图
vert 箱线图是否为竖直,否则为水平
**kwargs可选参数,定义其他属性

假设有下面的学生成绩单:

课程学生A学生B学生C学生D学生E学生F学生G学生H学生I学生J学生K
英语7690977170938683788581
西方经济学9381768866798392788678
市场营销学7487856990807784917470
财务管理6875708473607681886875
统计学5591687384817069946271

画出它们的箱线图如下:

# 导入工具包
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.font_manager import FontManager # 调用 matplotlib 中的字体,用于显示中文

# 这两行代码使得 pyplot 画出的图形中可以显示中文
plt.rcParams['font.sans-serif'] = ['Heiti TC'] # 黑体, 宋体:'Songti SC'
plt.rcParams['axes.unicode_minus'] = False

scores = [[76, 90, 97, 71, 70, 93, 86, 83, 78, 85, 81],
         [93, 81, 76, 88, 66, 79, 83, 92, 78, 86, 78],
         [74, 87, 85, 69, 90, 80, 77, 84, 91, 74, 70],
         [68, 75, 70, 84, 73, 60, 76, 81, 88, 68, 75],
         [70, 73, 92, 65, 78, 87, 90, 70, 66, 79, 68],
         [55, 91, 68, 73, 84, 81, 70, 69, 94, 62, 71]]
courses = ('英语', '西方经济学', '市场营销学', '财务管理', '基础会计学', '统计学')

plt.boxplot(scores,vert=False)
plt.yticks(np.arange(1, 7), courses) # 更改横坐标刻度为课程名字
plt.show()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/962259.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言入门 Day_11 判断的嵌套

目录 前言 1.判断的嵌套 2.switch判断 3.易错点 4.思维导图 前言 之前我们都只是面临的简单判断,也就是面对的是两三种不同的判断条件,执行两三种不同的代码分支。 但是让我们遇到更复杂的情况,需要进行更复杂的判断的时候。就需要使用…

编程题四大算法思想(三)——贪心法:找零问题、背包问题、任务调度问题

文章目录 贪心法找零问题(change-making problem)贪心算法要求基本思想适合求解问题的特征 背包问题0/1背包问题0/1背包问题——贪心法 分数背包问题 任务调度问题 贪心法 我在当前情况下,我把我做到最好。我也不管全局如何,整体如…

计算机图形软件(三)6-4 使用GLUT进行显示窗口管理

使用GLUT进行显示窗口管理 我们从使用简化的、最少的操作来显示一个图开始。使用 OpenGL 实用库的第一步是初始化GLUT。该初始化函数也能处理任何命令行变量,但不需要在第一个示例程序中使用参数。完成GLUT初始化的语句是 glutInit (&argc,argv); …

14 mysql bit/json/enum/set 的数据存储

前言 这里主要是 由于之前的一个 datetime 存储的时间 导致的问题的衍生出来的探究 探究的主要内容为 int 类类型的存储, 浮点类类型的存储, char 类类型的存储, blob 类类型的存储, enum/json/set/bit 类类型的存储 本文主要 的相关内容是 bit/json/enum/set 类类型的相关…

Kafka环境搭建与相关启动命令

一、Kafka环境搭建 点击下载kafka_2.11-2.3.1.tgz文件链接 1、上传kafka_2.11-2.3.1.tgz,解压kafka_2.11-2.3.1.tgz,得到kafka_2.11-2.3.1文件夹 1)上传 #使用mobaxterm将 kafka_2.11-2.3.1.tgz 传入tools文件夹 #用下面代码进入tools文件…

seq2seq与引入注意力机制的seq2seq

1、什么是 seq2seq? 就是字面意思,“句子 到 句子”。比如翻译。 2、seq2seq 有一些特点 seq2seq 的整体架构是 “编码器-解码器”。 其中,编码器是 RNN,并将 最后一个hidden state(隐藏状态)【即&…

nacos闪退、密码修改等通用问题

问题1:nacos闪退 解决方案:通常是jdk环境变量配置有问题,nacos获取不到环境变量所以闪退。因为nacos的启动文件会获取JAVA_HOME,如果配置的不对,会直接闪退。如图所示,nacos启动文件最开始就是获取环境…

Rust 学习笔记(持续更新中…)

一、 编译和运行是单独的两步 运行 Rust 程序之前必须先编译,命令为:rustc 源文件名 - rustc main.rs编译成功之后,会生成一个二进制文件 - 在 Windows 上还会生产一个 .pdb 文件 ,里面包含调试信息Rust 是 ahead-of-time 编译的…

CleanMyMac X和腾讯柠檬清理功能对比区别介绍

Mac电脑的清理软件款式多样,不同软件之间的功能和清理效果各不相同,那么大家的Mac都用什么清理软件呢?小编看了一篇Mac清理软件介绍的知乎,里面大部分评论用户推荐的主要是两款清理软件:CleanMyMac和腾讯柠檬清理软件。…

Linux挖矿程序清除

1. 找到挖矿进程 2.找到病毒的文件地址 ls -l /proc/进程ID/exe3.删除文件命令 rm -rf 文件地址4.杀死挖矿进程 kill -9 进程ID

【教学类-35-01】学号+姓名+班级(描字帖)A4一页

背景说明: 本学期我带机动班,其中大4班去的频率比较高,与是我用大四班的名单做了一份 “描字帖”,在9月1日第一天见面时,孩子们用记号笔描字帖时,我也可以对这些孩子初步混个眼熟(聪明的&#x…

0基础学习VR全景平台篇 第95篇:VR实景智慧导航操作手册

一、实景导航前期准备工作及点位采集 (一)实景导航前期准备工作 (1)拍摄设备 1.推荐相机:全画幅的佳能 Canon EOS​ 5D Mark IV 2.搭配镜头:原厂的佳能 Canon EF卡口 8-15mm 全画幅鱼眼镜头 3.三角架 …

基于鱼鹰算法优化的BP神经网络(预测应用) - 附代码

基于鱼鹰算法优化的BP神经网络(预测应用) - 附代码 文章目录 基于鱼鹰算法优化的BP神经网络(预测应用) - 附代码1.数据介绍2.鱼鹰优化BP神经网络2.1 BP神经网络参数设置2.2 鱼鹰算法应用 4.测试结果:5.Matlab代码 摘要…

【JavaEE进阶】Spring事务和事务传播机制

文章目录 一. 什么是Spring事务二. Spring中事务的实现1. Spring编程式事务2. 声明式事务2.1 trycatch下事务不会自动回滚的解决方案2.2 Transactional 作用范围2.3 Transactional 参数说明2.4 Transactional 工作原理 三. 事务的隔离级别1. 事务的四大特性2. Spring中设置事务…

15 mysql tiny/meidum/long blob/text 的数据存储

前言 这里主要是 由于之前的一个 datetime 存储的时间 导致的问题的衍生出来的探究 探究的主要内容为 int 类类型的存储, 浮点类类型的存储, char 类类型的存储, blob 类类型的存储, enum/json/set/bit 类类型的存储 本文主要 的相关内容是 tiny/medium/long blob/text 类…

基于电气特征分析(ESA)的状态监测是如何实现的?

在现代工业和生产环境中,设备的正常运行和高效性对于维持生产的连续性和质量至关重要。然而,设备的故障和损坏可能会导致生产中断、不必要的维修成本以及生产效率的下降。为了应对这些挑战,状态监测技术已成为工业界的重要工具之一&#xff0…

C++之std::search应用实例(一百八十九)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

Redis数据结构总结

Redis 是一款开源的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息代理。Redis 支持多种类型的数据结构,如字符串(String)、哈希(Hashes)、列表(Lists)、集合&…

45、springboot 文件上传到指定磁盘路径 及 上传成功后的文件回显

需求: 写一个文件上传的功能,把文件上传到指定的文件夹。 然后上传成功后的文件回显 ★ Spring Boot对文件上传提供的自动配置支持 Spring Boot的文件上传自动配置主要由 MultipartAutoConfiguration 和 MultipartProperties 两个类组成。MultipartPro…

linux并发服务器 —— 多线程并发(六)

线程概述 同一个程序中的所有线程均会独立执行相同程序,且共享同一份全局内存区域; 进程是CPU分配资源的最小单位,线程是操作系统调度执行的最小单位; Linux环境下,线程的本质就是进程; ps -Lf pid&…