【Python画图-seaborn驯化】一文学会seaborn画散点图scatterplot、swarmplot技巧

news2024/11/19 14:49:42

【Python画图-seaborn驯化】一文学会seaborn画散点图scatterplot、swarmplot

 
本次修炼方法请往下查看
在这里插入图片描述

🌈 欢迎莅临我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地!
🎇 免费获取相关内容文档关注:微信公众号,发送 pandas 即可获取
🎇 相关内容视频讲解 B站

🎓 博主简介:AI算法驯化师,混迹多个大厂搜索、推荐、广告、数据分析、数据挖掘岗位 个人申请专利40+,熟练掌握机器、深度学习等各类应用算法原理和项目实战经验

🔧 技术专长: 在机器学习、搜索、广告、推荐、CV、NLP、多模态、数据分析等算法相关领域有丰富的项目实战经验。已累计为求职、科研、学习等需求提供近千次有偿|无偿定制化服务,助力多位小伙伴在学习、求职、工作上少走弯路、提高效率,近一年好评率100%

📝 博客风采: 积极分享关于机器学习、深度学习、数据分析、NLP、PyTorch、Python、Linux、工作、项目总结相关的实用内容。

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

🎯 1. 基本介绍

  散点图是一种用于展示两个变量之间关系的图表。在Seaborn库中,散点图可以通过scatterplot函数方便地绘制,它非常适合用于探索数据集中变量间的相关性、趋势或模式。

💡 2. 原理介绍

  散点图本身不涉及复杂的数学公式,它简单地将数据点在二维平面上进行投影。每个数据点的位置由两个变量的值决定: ( x i , y i ) (x_i,y_i) (xi,yi), 其中 x i x_i xi y i y_i yi分别代表第 i 个数据点在x轴和y轴上的值。

🔍 3. 画图实践

3.1 数据准备

   我们通过seaborn自带的数据对其进行相关的画图,具体的导入数据代码如下所示:

import seaborn as sns
import matplotlib.pyplot as plt

# 使用Seaborn内置的tips数据集
tips = sns.load_dataset("tips")

	total_bill	tip	sex	smoker	day	time	size
0	16.99	1.01	Female	No	Sun	Dinner	2
1	10.34	1.66	Male	No	Sun	Dinner	3
2	21.01	3.50	Male	No	Sun	Dinner	3
3	23.68	3.31	Male	No	Sun	Dinner	2
4	24.59	3.61	Female	No	Sun	Dinner	4
...	...	...	...	...	...	...	...
239	29.03	5.92	Male	No	Sat	Dinner	3
240	27.18	2.00	Female	Yes	Sat	Dinner	2
241	22.67	2.00	Male	Yes	Sat	Dinner	2
242	17.82	1.75	Male	No	Sat	Dinner	2
243	18.78	3.00	Female	No	Thur	Dinner	2

3.2 基本散点图scatterplot

   如果画两个变量的时序上的变化关系的散点图,需要使用scatterplot函数,具体的代码如下所示:

# 绘制散点图,展示总账单和消费金额的关系
sns.scatterplot(x="total_bill", y="tip", data=tips)

# 添加标题和轴标签
plt.title("Total Bill vs Tip Amount")
plt.xlabel("Total Bill")
plt.ylabel("Tip Amount")

# 显示图表
plt.show()

在这里插入图片描述

3.3 条形散点图stripplot

   Stripplot(条形散点图)

  • Stripplot使用stripplot函数绘制。
    它通常用于展示一个分类变量和一个连续变量之间的关系。
    每个数据点在图上表示为一个条形,条形的x轴位置根据分类变量的类别确定。
    适合于展示不同类别的分布情况,以及类别间的比较。
       具体的代码如下所示:
ax = sns.stripplot(x="day", y="total_bill", data=tips)

在这里插入图片描述

  有时候我们不仅要分组,同时对每个分组内某个特征维度进行对比分析,具体的代码如下所示:

# 分组的散点图
ax = sns.stripplot(x="day", y="total_bill", data=tips, hue="smoker")

在这里插入图片描述

4 高阶用法

   有时候我们需要指定画图出现的顺序,具体的代码如下所示:

# 是不是想横着放呢,很简单的,x-y顺序换一下就好了
ax = sns.stripplot(x="total_bill", y="day", data=tips,jitter=True)

在这里插入图片描述

3.3 分布散点图swarmplot

  swarmplt的参数和用法和stripplot的用法是一样的,只是表现形式不一样而已。具体的代码如下所示:

# 分组的散点图
ax = sns.swarmplot(x="day", y="total_bill", data=tips)

在这里插入图片描述

🔍 4. 注意事项

  • 散点图非常适合于展示两个连续变量之间的关系。
  • 当数据集中的数据点数量非常大时,散点图可能会变得杂乱无章。在这种情况下,可以考虑使用六边形网格图(hexbin plot)或小提琴图。
  • 散点图可以添加颜色或大小来表示第三个变量,从而提供更多的信息维度。
  • 检查数据中的异常值或离群点,它们可能会影响对变量关系的解释。

🔍 5. 总结

  Seaborn的散点图是一个直观的工具,用于探索和展示两个变量之间的关系。通过本博客的代码示例,我们学习了如何使用Seaborn绘制散点图,并展示了如何通过散点图分析数据集中的趋势和模式。希望这篇博客能够帮助你更好地利用散点图进行数据探索和分析。

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

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

相关文章

用免费的可视化工具制作3D智慧城市大屏,融合数字孪生,引领数据升级

在如今数据驱动的时代,越来越多的场景中都有可视化大屏的身影,许多企业和政府部门也从常规的二维看板渐渐地转向更加炫酷,立体的3D可视化大屏。3D可视化大屏成为了展示复杂数据、实时监控业务动态的重要工具。本文将详细介绍如何使用免费的数…

基于Springboot的智慧养老中心管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于Springboot的智慧养老中心管理系统,…

Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)

1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现。到今天为止,大功即将告成;框架所需要的代码实现都基本完成。 2.data数据封装 2.1使用背景 在实际项目过程中,我们的数据可能是存储在一个数据文件中&#x…

RRStudio 下载及安装(详尽版)

R语言来自S语言,是S语言的一个变种。S语言、C语言、Unix系统都是贝尔实验室的研究成果。R 语言是一种解释型的面向数学理论研究工作者的语言,主要用于统计分析、绘图、数据挖掘。 R 语言自由软件,免费、开放源代码,支持各个主要计…

NLP入门——前馈词袋分类模型的搭建、训练与预测

模型的搭建 线性层 >>> import torch >>> from torch import nn >>> class DBG(nn.Module): ... def forward(self,x): ... print(x.size()) ... return x ... >>> tmod nn.Sequential(nn.Linear(3,4),DB…

面试-微服务篇

springcloud组件有哪些? eureka、ribbon负载均衡、feign、hystrix、zuul/gateway网关 nacos、ribbon、feign、sentinel、gateway 服务注册和发现是什么意思?springcloud如何实现服务注册发现? 微服务中必须要使用的组件,考察我们使…

【React】Ant Design -- Table分页功能实现

实现步骤 为Table组件指定pagination属性来展示分页效果在分页切换事件中获取到筛选表单中选中的数据使用当前页数据修改params参数依赖引起接口重新调用获取最新数据 const pageChange (page) > {// 拿到当前页参数 修改params 引起接口更新setParams({...params,page})…

【数据清洗中分段线性插值法原理】

数据清洗中分段线性插值法原理 一、什么是分段线性插值法?二、分段线性插值法的数学原理三、分段线性插值法的应用步骤1. 引入库2. 创建示例数据3. 应用分段线性插值法4. 可视化插值结果 一、什么是分段线性插值法? 分段线性插值法通过在已知数据点之间…

己内酰胺纯化除杂的最佳工艺

己内酰胺纯化除杂的最佳工艺包括结晶法、离子交换树脂法、精馏法和萃取法等,每种方法都有其特定的应用场景和优缺点。以下是对这些方法的详细介绍: 最佳工艺介绍 ● 结晶法:通过调节pH值,使己内酰胺在特定条件下结晶&#xff0…

CEPH 系统盘挂了,如何使用数据盘恢复

硬盘损坏是早晚的时,CEHP数据盘坏了,使用CEPH的基本都轻车熟路了,如果系统盘坏了呢?不知道的可能会采取整个系统盘全做的方式 前提条件:使用cephadm搭建集群 如果换服务器,请确保CEPH数据盘放到其它服务器上…

油猴Safari浏览器插件:Tampermonkey for Mac 下载

Tampermonkey 是一个强大的浏览器扩展,用于运行用户脚本,这些脚本可以自定义和增强网页的功能。它允许用户在网页上执行各种自动化任务,比如自动填写表单、移除广告、改变页面布局等。适用浏览器: Tampermonkey 适用于多数主流浏览…

【数智化人物展】数势科技创始人兼CEO黎科峰:数智化时代To B软件行业面临颠覆与重塑...

黎科峰 本文由数势科技创始人兼CEO黎科峰投递并参与由数据猿联合上海大数据联盟共同推出的《2024中国数智化转型升级先锋人物》榜单/奖项评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 2020年,对我而言,是职业生涯中的一个重大转折点。在全球新…

手机如何充当电脑摄像头,新手使用教程分享(新)

手机如何充当电脑摄像头?随着科技的发展,智能手机已经成为我们日常生活中不可或缺的一部分。手机的摄像头除了拍摄记录美好瞬间之外,其实还有个妙用,那就是充当电脑的摄像头。手机摄像头充当电脑摄像头使用的话,我们就…

FPGA基本资源介绍

文章目录 FPGA资源介绍1.可编程输入输出单元(IOB)2.可配置逻辑块(CLB)3.数字时钟管理模块(DCM)4.嵌入式块RAM(BLOCK RAM / BRAM)4.1其他ram 5.丰富的布线资源6.底层内嵌功能单元7.内嵌专用硬核软核、硬核、以及固核的概念 FPGA资源介绍 1.可编程输入输出单元(IOB) 可编程输入…

LangChain终极内幕指南,学会langchain就看它了

1.概述 在人工智能迅速演进的时代,诸如Open AI的ChatGPT和Google的Bard等大型语言模型(LLMs)正彻底改变我们与技术互动的方式。这些技术巨头和SaaS公司正在竞相利用LLMs的威力,创造更为智能和实用的应用程序。 然而,真正的变革并非仅仅停留…

赋能电子行业:三品PLM软件系统如何加速电子产品创新

在当今竞争激烈的市场中,企业如何通过技术创新和管理优化来提升自身的竞争力,已成为一个重要课题。电子行业快速发展的同时也遇到了不少的困难,使得企业效率低下、产能没能跟上时代的发展。而PLM系统的出现,给了电子行业新的希望。…

springboot学生档案信息管理系统-计算机毕业设计源码96509

目 录 第 1 章 引 言 1.1 选题背景 1.2 研究现状 1.3 论文结构安排 第 2 章 系统的需求分析 2.1 系统可行性分析 2.1.1 技术方面可行性分析 2.1.2 经济方面可行性分析 2.1.3 法律方面可行性分析 2.1.4 操作方面可行性分析 2.2 系统功能需求分析 2.3 系统性需求分析…

基于JavaScript、puppeteer的爬虫

前期准备: npm puppeteer import puppeteer from puppeteer; puppeteer文档 第一步:启动浏览器,跳转到需要爬取的页面 const browser await puppeteer.launch({ headless: false });const page await browser.newPage();await page.goto(url, { w…

SCI一区 | Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测

SCI一区 | Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测 目录 SCI一区 | Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.【SCI一区级】Matlab实现DBO-TCN-LSTM-Attention多变量时间序列预测(程…

DolphinScheduler部署安装or基础介绍(一)

DolphinScheduler概述 Apache DolphinScheduler是一个分布式、易扩展的可视化DAG工作流任务调度平台。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用 DolphinScheduler核心架构 DolphinScheduler的主要角色如下: Ma…