python制图之小提琴图

devtools/2025/2/25 3:12:13/

提琴图(Violin Plot)是一种结合了箱线图(Box Plot)和核密度估计(Kernel Density Estimation, KDE)的可视化工具,用于展示数据的分布情况和概率密度。它在数据可视化中具有独特的作用.本节我们学习如何使用python绘制提琴图

python"># 导入所需的库
import matplotlib.pyplot as plt  # 用于绘图
import numpy as np  # 用于数值计算
import pandas as pd  # 用于数据处理和分析
import seaborn as sns  # 用于高级数据可视化
import matplotlib as mpl  # Matplotlib 的底层库,用于调整绘图参数
import warnings  # 用于处理警告信息# 忽略警告
warnings.filterwarnings("ignore")  # 忽略运行代码时可能出现的警告,使输出更简洁# 恢复默认的 Matplotlib 设置
mpl.rcParams.update(mpl.rcParamsDefault)  # 将 Matplotlib 的参数恢复为默认值,避免之前设置的影响
sns.set_style("white")  # 设置 Seaborn 的绘图风格为白色背景# 示例数据
data = {"Age": ["18-24", "18-24", "25-34", "25-34", "35-44", "35-44", "45-54", "45-54", "55+", "55+"],  # 年龄组"Unemployed": [120, 150, 90, 100, 80, 95, 70, 85, 60, 75],  # 各年龄组的失业人数"Gender": ["Male", "Female", "Male", "Female", "Male", "Female", "Male", "Female", "Male", "Female"]  # 性别
}# 将数据保存为 Excel 文件
employment = pd.DataFrame(data)  # 将字典数据转换为 Pandas DataFrame
employment.to_excel("unemployment.xlsx", index=False)  # 将 DataFrame 保存为 Excel 文件,不保存索引# 读取数据
employment = pd.read_excel("unemployment.xlsx")  # 从 Excel 文件中读取数据# 绘制提琴图
sns.violinplot(x=employment.Age,  # x 轴为年龄组y=employment.Unemployed,  # y 轴为失业人数hue=employment.Gender,  # 按性别分组并着色palette='Set2'  # 使用 Seaborn 的 Set2 调色板
)
plt.show()  # 显示图形


http://www.ppmy.cn/devtools/161481.html

相关文章

可编辑35页PPT | DeepSeek如何赋能职场应用

DeepSeek作为一款基于人工智能技术的多模态AI工具,近年来在职场应用中迅速崭露头角,以其强大的功能和高效的表现赢得了广泛的赞誉。DeepSeek融合了文本生成、图像创作、数据分析与可视化等多种功能,为职场人士提供了前所未有的便利和效率提升…

C#初级教程(4)——流程控制:从基础到实践

1.为什么需要流程控制 有时候,需要根据程序运行时的具体环境,有选择地执行不同代码段;而有时候,则需要反复执行同一段代码。这时候,流程控制中的分支和循环就发挥了关键作用。分支能让代码根据条件判断结果来决定执行路…

Java List 自定义对象排序 Java 8 及以上版本使用 Stream API

从 Java 8 开始,你可以使用 Stream API 对 List 进行排序,这种方式更加简洁和灵活。 以下是一个示例代码: import java.util.ArrayList; import java.util.Comparator; import java.util.List; import java.util.stream.Collectors;// 自定…

基于Java的实时数据流处理框架设计与实现

基于Java的实时数据流处理框架设计与实现 在大数据时代,实时数据流处理成为了数据分析与处理的重要组成部分。尤其是在需要快速响应的场景中,数据流处理显得尤为关键。本文将详细介绍如何设计与实现一个基于Java的实时数据流处理框架,并通过…

网络可靠性要求

目录 一、背景介绍 二、环路引发的危害 1、广播风暴 2、MAC 地址表震荡 三、STP生成树 1、STP的作用 2、STP工作过程 3、根桥选举 4、根端口选举 5、指定端口选举 6、BPDU报文分析 7、计时器 8、端口状态转化 总结 一、背景介绍 为了提高网络可靠性,交换网络…

设计模式之装饰器设计模式/包装设计模式

装饰器设计模式(Decorator Pattern) 也叫包装设计模式,属于结构型模式,它是作为现有的类的一个包装,允许向一个现有的对象添加新的功能,同时又不改变其结构 给对象增加功能,一般两种方式&#…

解决DeepSeek服务器繁忙问题的实用指南

目录 简述 1. 关于服务器繁忙 1.1 服务器负载与资源限制 1.2 会话管理与连接机制 1.3 客户端配置与网络问题 2. 关于DeepSeek服务的备用选项 2.1 纳米AI搜索 2.2 硅基流动 2.3 秘塔AI搜索 2.4 字节跳动火山引擎 2.5 百度云千帆 2.6 英伟达NIM 2.7 Groq 2.8 Firew…

mybatis从接口直接跳到xml的插件

在使用 MyBatis(包括 MyBatis-Plus)时,如果你希望从接口方法直接跳转到对应的 XML 映射文件中的 SQL 语句定义,可以借助一些开发工具或插件来实现这一功能。以下是几种常见的方法和插件推荐: 方法一:使用 IDE 内置功能 IntelliJ IDEA IntelliJ IDEA 提供了对 MyBatis …