Seaborn图表使用指南!
目录
- 介绍
- 线图
- 散点图
- 直方图
- 概率密度函数 (PDF)
- 箱线图
- 小提琴剧情
- 配对图
- 热图
- 关节图
- 地毯图
一、介绍
数据科学已成为一个突出的领域,近年来呈爆炸性增长。对精通从数据中获取见解并应用这些见解来解决现实世界问题的数据科学家的需求从未增加。使用图形、图表和其他表示形式可视化数据是一种从此信息中获取见解的技术。
Seaborn 是一个 Python 库,它允许我们绘制图表和绘图,帮助我们从数据中提取有用的见解。本博客的目的是提供它们的概述。话不多说,让我们开始吧。我们将使用 Iris 数据集进行可视化。您可以在此处找到数据。
二、导入数据和处理数据
请注意,如果您在 Kaggle 笔记本以外的任何地方运行它,您可能必须将 Iris.csv 文件的本地地址放在上面的函数中。如果您还没有文件,请从上面的链接下载该文件。
#Importing Libraries
import numpy as np
import pandas as pd
import seaborn as sns#Getting the data in pandas DataFrame Format
data = pd.read_csv('/kaggle/input/iris/Iris.csv')
data.head() #Printing first 5 values in the dataset

数据集的前 5 个值。(来源:作者)
萼片长度厘米和萼片宽度厘米是鸢尾花萼片的长度和宽度,以厘米为单位计算。同样,PetallLengthCm和PetallWidthCm是鸢尾花花瓣的长度和宽度,以厘米为单位。物种表示花的种类。鸢尾有三种类型:鸢尾属、弗吉尼亚鸢尾和杂色鸢尾。
三、生成线图
在此图中,通过将两个变量(x 和 y)绘制在 2D 图上并将它们连接来显示它们之间的关系。它显示了变量如何随时间变化。线图有多种用途,包括研究动态变量(随时间变化)、查找模式和跟踪趋势。我们可以使用线图函数生成线图。
#Creating a line plot between Sepal Length and Sepal Width of all the #species sns.lineplot(data=data,x = 'SepalLengthCm',y='SepalWidthCm')

线图(来源:作者)
#We can also plot separate line plots for each of the species. sns.lineplot(data=data,x = 'SepalLengthCm',y='SepalWidthCm',hue = 'Species')

所有类别的单独线图(来源:作者)
四、散点图
散点图类似于折线图,但首选静态变量(不会随时间变化)。基本上,它将所有点绘制在 2D 图形上。散点图用于确定两个变量之间的相关性。我们可以通过散点图函数使用它。
#Generating a Scatter Plot of all the data points. sns.scatterplot(data=data,x = 'SepalLengthCm',y='SepalWidthCm')

散点图(来源:作者)
#We can also distinguish the points by their species sns.scatterplot(data=data,x = 'SepalLengthCm',y='SepalWidthCm',hue = 'Species')

所有类别的散点图(来源:作者)
五、直方图
直方图是最重要的图之一,可用于多种用途,包括检测数据中的异常值、偏度和方差。每个条形显示落在 x 轴上特定范围下的数据点的频率/数量。我们可以使用 histplot 函数绘制直方图。
#Plotting histogram for all the species sns.histplot(data=data,x='SepalLengthCm')

直方图(来源:作者)
#Plotting histograms for each species sns.histplot(data=data,x='SepalLengthCm',hue='Species')

单个物种的直方图(来源:作者)
六、概率密度函数 (PDF)
概率密度函数计算在值范围内找到随机变量的概率。此方法的目的是确定变量属于哪个分布。通过揭示变量属于哪个分布,我们可以选择最有效的机器学习模型在变量上运行,以获得最准确的结果。我们使用核密度估计来计算概率密度函数。我们可以使用 kdeplot 函数绘制它。
#Plotting the probability density function for Petal Length of all species sns.kdeplot(data=data,x='PetalLengthCm')

概率密度函数(来源:作者)
#Plotting the probability density function for Petal Length for #individual species sns.kdeplot(data=data,x='PetalLengthCm',hue='Species')

单个物种的概率密度函数(来源:作者)
从上图可以看出,Iris-Setosa的概率密度函数与其他物种没有重叠。因此,鸢尾花可以很容易地与其他物种区分开来。
七、箱线图
箱形图为我们提供了有关数据的五个见解,它们是:
- 下限 — 告诉我们数据集中的最小值
- 上限 — 为我们提供数据集中的最大值
下限和上限极值可用于检测异常值。
- 上四分位数 — 为我们提供数据集的第 75 个百分位数,即 75% 的数据落下的值(按升序排列时)。
- 下四分位数 — 为我们提供数据集的第 25 个百分位数,即 25% 的数据落下的值(按升序排列时)。
该框(下四分位数到上四分位数)称为四分位数范围。
- 中位数 — 为我们提供数据集的中位数
请参阅下面的箱形图以清晰理解。

箱形图(来源:作者)
#Plotting boxplot for individual species sns.boxplot(data=data,y='PetalLengthCm',x='Species')

单个物种的箱形图(来源:作者)
八、小提琴图
小提琴图类似于箱线图,但也指示变量的概率密度函数。这使它看起来像一把小提琴。您可以使用小提琴绘图功能绘制它。
请参阅下面的小提琴图以清晰理解。

小提琴剧情(来源:作者)
#Plotting violinplot for individual species sns.violinplot(data=data,y='PetalLengthCm',x='Species')

单个物种的小提琴图(来源:作者)
九、配对图
配对图允许我们绘制所有非分类变量的成对散点图。对于 x 轴和 y 轴上的相同变量,我们得到变量的直方图/概率密度函数。由于它将所有图绘制在一起,因此分析每个特征及其与其他特征的相关性变得非常容易。当数据集包含大量要素时,不建议使用成对图,因为它们需要相当长的时间来绘制。您可以使用配对图函数绘制配对图。
#Plotting pairplot sns.pairplot(data=data)

配对图(来源:作者)
#Plotting the pair plots for individial species sns.pairplot(data=data,hue='Species')

单个物种的配对图(来源:作者)
十、热图
热图通常用于研究数值变量的相关性。每个单元格都有一个颜色,表示两个变量之间的相关性。色调较深的颜色表示变量之间的高正相关,而色调较浅的颜色表示变量之间的高负相关。您可以使用热图功能绘制热图。
#Plotting the heatmap sns.heatmap(data=data.corr(), annot=True,cmap = "GnBu")

热图(来源:作者)
从热图中,我们知道具有高度相关性的货币对是:
- 花瓣长度和萼片长度
- 萼片长度和花瓣宽度
- 花瓣长度和花瓣宽度
此外,我们观察到所有对角线元素的相关性均为 1。这是因为这些平方与相同的变量相关,因此它是完美的相关性。
十一、关节图
在两个变量(x 和 y)的联合图中,我们绘制了两个变量的散点图和直方图/概率密度函数。联合图可用于单变量和双变量分析。
联合图 = 散点图 + 两个变量的直方图/概率密度函数。
#Plotting joint plot of Sepal Width and Petal Length sns.jointplot(data=data,x='PetalLengthCm',y='SepalWidthCm')

联合剧情(来源:作者)
#Plotting joint plot for individual species sns.jointplot(data=data,x='PetalLengthCm',y='SepalWidthCm',hue='Species')

单个物种的联合图(来源:作者)
十二、地毯图
与联合图类似,地毯图可用于单变量和双变量分析。地毯图显示了变量在 x 轴和 y 轴上的边际分布。可以为单个变量和多个变量绘制地毯图。
#Plotting rug plot for only Petal length for individual species sns.rugplot(data=data,x='PetalLengthCm',hue='Species')

单个变量的地毯图(来源:作者)
#Plotting rug plot for only Petal length and Sepal Length for individual #species sns.rugplot(data=data,x='PetalLengthCm',y='SepalLengthCm',hue='Species')

两个变量的地毯图(来源:作者)
十三、结论
对于单变量分析,我们可以使用
- 线图
- 箱线图
- 小提琴剧情
- 概率密度函数
- 直方图
- 联合情节
- 地毯图
对于双变量分析,我们可以使用
- 配对图
- 散布图
- 联合情节
- 热图
- 地毯图
相关文章:
Seaborn图表使用指南!
目录 介绍线图散点图直方图概率密度函数 (PDF)箱线图小提琴剧情配对图热图关节图地毯图 一、介绍 数据科学已成为一个突出的领域,近年来呈爆炸性增长。对精通从数据中获取见解并应用这些见解来解决现实世界问题的数据科学家的需求从未增加。…...
[C++ 网络协议编程] TCP/IP协议
目录 1. TCP/IP协议栈 2. TCP原理 2.1 TCP套接字中的I/O缓冲 2.2 TCP工作原理 2.2.1 三次握手(连接) 2.2.2 与对方主机的数据交换 2.2.3 四次握手(断开与套接字的连接) TCP(Transmission Control Protocol传输控…...
Unity用NPOI创建Exect表,保存数据,和修改删除数据。以及打包后的坑——无法打开新创建的Exect表
先说坑花了一下午才找到解决方法解决, 在Unity编辑模式下点击物体创建对应的表,获取物体名字与在InputText填写的注释数据。然后保存。创建Exect表可以打开,打包PC后,点击物体创建的表,打不开文件破损 解决方法&#…...
记一次fegin调用的媒体类型问题
1.问题:分页查询,分页参数传递不生效 2.开发环境:fegin接口 开发环境:调用接口 3.修改后:fegin接口不变 调用接口 前端媒体类型: 问题解决!!! 4.原因分析&…...
在Hive/Spark上运行执行TPC-DS基准测试 (ORC和TEXT格式)
目前,在Hive/Spark上运行TPC-DS Benchmark主要是通过早期由Hortonworks维护的一个项目:hive-testbench 来完成的。本文我们以该项目为基础介绍一下具体的操作步骤。不过,该项目仅支持生成ORC和TEXT格式的数据,如果需要Parquet格式,请参考此文《在Hive/Spark上执行TPC-DS基…...
如何仿写简易tomcat 实现思路+代码详细讲解
仿写之前,我们要搞清楚都要用到哪些技术 自定义注解,比如Tomcat使用的是Servlet,我们可以定义一个自己的MyServlet构造请求体和返回体,比如tomcat使用HttpRequest,我们可以自己定义myHttpRequestjava去遍历一个指定目…...
如何提高深度学习性能
可用于 对抗过度拟合并获得更好泛化能力的20 个提示、技巧和技术 如何从深度学习模型中获得更好的性能? 这是我最常被问到的问题之一。 可能会被问为: 如何提高准确率? ……或者可以反过来说: 如果我的神经网络表现不佳该怎么办? 我经常回答说:“我不太清楚,但我有很…...
ECMAScript版本对比:从ES1到ES2021
引言 ECMAScript(简称ES)是一种用于编写Web前端JavaScript的标准化语言。自1997年发布第一版(ES1)以来,ECMAScript已经经历了多个版本的更新和演进。每个版本都引入了新的语法和功能,为开发人员提供了更强…...
设计HTML5表格
在网页设计中,表格主要用于显示包含行、列结构的二维数据,如财务表格、调查数据、日历表、时刻表、节目表等。在大多数情况下,这类信息都由列标题或行标题及数据构成。本章将详细介绍表格在网页设计中的应用,包括设计符合标准化的…...
神经网络基础-神经网络补充概念-60-卷积步长
概念 在深度学习中,卷积步长(convolution stride)是指在卷积操作中滑动卷积核的步幅。卷积操作是神经网络中常用的操作之一,用于从输入数据中提取特征。步长决定了卷积核在输入数据上的滑动间隔,从而影响输出特征图的…...
怎么开通Tik Tok海外娱乐公会呢?
TikTok作为全球知名的社交媒体平台,吸引了数亿用户的关注和参与。许多公司和个人渴望通过开通TikTok直播公会进入这一领域,以展示自己的创造力和吸引更多粉丝。然而,成为TikTok直播公会并非易事,需要满足一定的门槛和申请找cmxyci…...
Java接口压力测试—如何应对并优化Java接口的压力测试
导言 在如今的互联网时代,Java接口压力测试是评估系统性能和可靠性的关键一环。一旦接口不能承受高并发量,用户体验将受到严重影响,甚至可能导致系统崩溃。因此,了解如何进行有效的Java接口压力测试以及如何优化接口性能至关重要…...
Coremail参与编制|《信创安全发展蓝皮书——系统安全分册(2023年)》
信创安全发展蓝皮书 近日,Coremail参与编制的《信创安全发展蓝皮书—系统安全分册(2023年)》重磅发布。 此次信创安全发展蓝皮书由工业和信息化部电子第五研究所联合大数据协同安全技术国家工程研究中心重磅共同发布。 本次蓝皮书涵盖信创系…...
分布式 - 消息队列Kafka:Kafka 消费者消息消费与参数配置
文章目录 1. Kafka 消费者消费消息01. 创建消费者02. 订阅主题03. 轮询拉取数据 2. Kafka 消费者参数配置01. fetch.min.bytes02. fetch.max.wait.ms03. fetch.max.bytes04. max.poll.records05. max.partition.fetch.bytes06. session.timeout.ms 和 heartbeat.interval.ms07.…...
批量爬虫采集大数据的技巧和策略分享
作为一名专业的爬虫程序员,今天主要要和大家分享一些技巧和策略,帮助你在批量爬虫采集大数据时更高效、更顺利。批量爬虫采集大数据可能会遇到一些挑战,但只要我们掌握一些技巧,制定一些有效的策略,我们就能在数据采集…...
Springboot 实践(7)springboot添加html页面,实现数据库数据的访问
前文讲解,项目已经实现了数据库Dao数据接口,并通过spring security数据实现了对系统资源的保护。本文重点讲解Dao数据接口页面的实现,其中涉及页面导航栏、菜单栏及页面信息栏3各部分。 1、创建html页面 前文讲解中,资源目录已经…...
Go中带标签的break/continue以及goto的差别
带标签的 continue: 直接跳到标签所标记的最外层循环的下一个迭代,忽略当前迭代剩余的代码。 带标签的 break: 直接跳出标签所标记的最外层循环,继续执行该循环之后的代码。 goto 关键字 goto 可以无条件地跳转到程序中指定的标…...
SaaS当然是一门好生意了啊
(1)SaaS关键特征 1、应用架构:多租户 2、部署:公有IaaS部署 3、商业模式:年度订阅续费 (2)用户云注册、用户在线付费 用户云注册、用户在线付费,站在中国乙方利益视角,多…...
ZooKeeper单机服务器启动
ZooKeeper服务器的启动,大体可以分为以下五个主要步骤:配置文件解析、初始化数据管理器、初始化网络I/O管理器、数据恢复和对外服务。下图所示是单机版ZooKeeper服务器的启动流程图。 预启动 预启动的步骤如下。 (1)统一由QuorumPeerMain作为启动类。 …...
Jenkins自动发送飞书消息
前言 公司办公软件用的是飞书套壳,本文主要介绍如何通过飞书机器人发送Jenkins构建的进度和消息。 方法 前置条件 创建一个飞书机器人搭建好Jenkins创建好构建任务 过程 根据飞书开发者平台的接口文档,用shell脚本封装一套调用飞书机器人发送消息接…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...
PH热榜 | 2025-06-08
1. Thiings 标语:一套超过1900个免费AI生成的3D图标集合 介绍:Thiings是一个不断扩展的免费AI生成3D图标库,目前已有超过1900个图标。你可以按照主题浏览,生成自己的图标,或者下载整个图标集。所有图标都可以在个人或…...
统计学(第8版)——统计抽样学习笔记(考试用)
一、统计抽样的核心内容与问题 研究内容 从总体中科学抽取样本的方法利用样本数据推断总体特征(均值、比率、总量)控制抽样误差与非抽样误差 解决的核心问题 在成本约束下,用少量样本准确推断总体特征量化估计结果的可靠性(置…...
VSCode 没有添加Windows右键菜单
关键字:VSCode;Windows右键菜单;注册表。 文章目录 前言一、工程环境二、配置流程1.右键文件打开2.右键文件夹打开3.右键空白处打开文件夹 三、测试总结 前言 安装 VSCode 时没有注意,实际使用的时候发现 VSCode 在 Windows 菜单栏…...
Spring AI中使用ChatMemory实现会话记忆功能
文章目录 1、需求2、ChatMemory中消息的存储位置3、实现步骤1、引入依赖2、配置Spring AI3、配置chatmemory4、java层传递conversaionId 4、验证5、完整代码6、参考文档 1、需求 我们知道大型语言模型 (LLM) 是无状态的,这就意味着他们不会保…...
Modbus转Ethernet IP深度解析:磨粉设备效率跃升的底层技术密码
在建材矿粉磨系统中,开疆智能Modbus转Ethernet IP网关KJ-EIP-101的应用案例是一个重要的技术革新。这个转换过程涉及到两种主要的通信协议:Modbus和Ethernet IP。Modbus是一种串行通信协议,广泛应用于工业控制系统中。它简单、易于部署和维护…...
