绘图 Seaborn 10个示例
绘图 Seaborn
- 是什么
- 安装
- 使用
- 显示中文及负号
- 散点图
- 箱线图
- 小提琴图
- 堆叠柱状图
- 分面绘图
- 分类散点图
- 热力图
- 成对关系图
- 线图
- 直方图
是什么
Seaborn 是一个Python数据可视化库,它基于Matplotlib。Seaborn提供了高级的绘图接口,可以用来绘制各种统计图形,如线图、热图和分布图等,使得数据的可视化变得更加简单和快速。Seaborn的一些特点包括默认的美观度和自定义主题、多种可视化类型和方便的绘图函数等。Seaborn的使用也可以通过简单的代码完成,因此是一个非常流行的数据可视化工具。
安装
-
确认你已经安装了 Python 和 pip (Python 的包管理工具)。
如果你没有安装,可以从官网下载安装:https:/https://www.python.org/downloads/ -
打开终端 (Windows 用户可以使用 PowerShell 或命令提示符)。
-
在终端中输入以下命令来安装 Seaborn:
pip install seaborn -
等待安装完成。
-
安装完成后,在 Python 中导入 Seaborn:
import seaborn as sns
现在,你已经成功安装了 Seaborn。
使用
显示中文及负号
# 配置中文字体路径,替换成您的字体文件路径
plt.rcParams['font.sans-serif'] = ['SimHei']# 解决负号显示问题
plt.rcParams['axes.unicode_minus'] = False
散点图
import seaborn as sns
import matplotlib.pyplot as plt# 配置中文字体路径,替换成您的字体文件路径
plt.rcParams['font.sans-serif'] = ['SimHei']# 解决负号显示问题
plt.rcParams['axes.unicode_minus'] = False# 创建一个示例数据集
# 这里使用Seaborn内置的数据集,你也可以使用自己的数据集
tips = sns.load_dataset("tips")# 创建散点图
sns.scatterplot(x="total_bill", y="tip", data=tips)# 添加标题和标签
plt.title("散点图示例")
plt.xlabel("总账单金额")
plt.ylabel("小费金额")# 显示图形
plt.show()

上面的代码执行以下操作:
导入Seaborn和Matplotlib库。
使用sns.load_dataset()加载一个内置的示例数据集(在此示例中使用的是名为"tips"的数据集,包含了餐厅账单和小费数据)。
使用sns.scatterplot()创建一个散点图,指定x和y轴的数据列以及数据集。
使用plt.title()、plt.xlabel()和plt.ylabel()添加标题和标签。
最后,使用 plt.show() 显示图形。
箱线图
import seaborn as sns
import matplotlib.pyplot as plttips = sns.load_dataset("tips")
sns.boxplot(x="day", y="total_bill", data=tips)
plt.title("箱线图示例")
plt.xlabel("日期")
plt.ylabel("总账单金额")
plt.show()

小提琴图
import seaborn as sns
import matplotlib.pyplot as plttips = sns.load_dataset("tips")
sns.violinplot(x="day", y="total_bill", data=tips)
plt.title("小提琴图示例")
plt.xlabel("日期")
plt.ylabel("总账单金额")
plt.show()

堆叠柱状图
import seaborn as sns
import matplotlib.pyplot as plttips = sns.load_dataset("tips")
sns.barplot(x="day", y="total_bill", data=tips, hue="sex")
plt.title("堆叠柱状图示例")
plt.xlabel("日期")
plt.ylabel("总账单金额")
plt.show()

分面绘图
import seaborn as sns
import matplotlib.pyplot as plttips = sns.load_dataset("tips")
sns.relplot(x="total_bill", y="tip", data=tips, col="time", hue="sex")
plt.suptitle("分面绘图示例")
plt.show()

分类散点图
import seaborn as sns
import matplotlib.pyplot as plttips = sns.load_dataset("tips")
sns.stripplot(x="day", y="total_bill", data=tips, jitter=True, hue="sex", dodge=True)
plt.title("分类散点图示例")
plt.xlabel("日期")
plt.ylabel("总账单金额")
plt.show()

热力图
import seaborn as sns
import matplotlib.pyplot as plt# 创建一个示例数据框
import pandas as pd
data = pd.DataFrame({'A': [1, 2, 3, 4, 5],'B': [3, 4, 1, 5, 2],'C': [5, 2, 3, 1, 4]})# 计算相关性矩阵
correlation_matrix = data.corr()# 使用heatmap函数创建相关性矩阵的热力图
sns.heatmap(correlation_matrix, annot=True, cmap="YlGnBu")# 添加标题
plt.title("相关性矩阵的热力图示例")# 显示图表
plt.show()

成对关系图
import seaborn as sns
import matplotlib.pyplot as plt# 加载示例数据集(这里使用的是Iris数据集)
iris = sns.load_dataset("iris")# 使用pairplot创建成对关系图,设置hue参数来根据类别进行颜色分组
sns.pairplot(iris, hue="species")# 添加标题
plt.title("Iris数据集的成对关系图")# 显示图表
plt.show()

线图
import seaborn as sns
import matplotlib.pyplot as plt
# 配置中文字体路径,替换成您的字体文件路径
plt.rcParams['font.sans-serif'] = ['SimHei']# 解决负号显示问题
plt.rcParams['axes.unicode_minus'] = False
fmri = sns.load_dataset("fmri")
sns.lineplot(x="timepoint", y="signal", data=fmri, hue="event")
plt.title("线图示例")
plt.xlabel("时间点")
plt.ylabel("信号强度")
plt.show()

直方图
import seaborn as sns
import matplotlib.pyplot as plt# 配置中文字体路径,替换成您的字体文件路径
plt.rcParams['font.sans-serif'] = ['SimHei']# 解决负号显示问题
plt.rcParams['axes.unicode_minus'] = False
tips = sns.load_dataset("tips")
sns.histplot(data=tips, x="total_bill", bins=20, kde=True)
plt.title("直方图示例")
plt.xlabel("总账单金额")
plt.ylabel("频数")
plt.show()

相关文章:
绘图 Seaborn 10个示例
绘图 Seaborn 是什么安装使用显示中文及负号散点图箱线图小提琴图堆叠柱状图分面绘图分类散点图热力图成对关系图线图直方图 是什么 Seaborn 是一个Python数据可视化库,它基于Matplotlib。Seaborn提供了高级的绘图接口,可以用来绘制各种统计图形…...
airserver mac 7.27官方破解版2024最新安装激活图文教程
airserver mac 7.27官方破解版是一款好用的airplay投屏工具,可以轻松将ios荧幕镜像(airplay)至mac上,在mac平台上实现视频、音频、幻灯片等文件资源的接收及投放演示操作,解决iphone或ipad的屏幕录像问题,满…...
文章解读与仿真程序复现思路——电力系统自动化EI\CSCD\北大核心《考虑移动式储能调度的配电网灾后多源协同孤岛运行策略》
这篇文章的标题表明研究的主题是在配电网发生灾害后,采用一种策略来实现多源协同孤岛运行,并在这个过程中特别考虑了移动式储能的调度。 让我们逐步解读标题的关键词: 考虑移动式储能调度: 文章关注的焦点之一是移动式储能系统的…...
Spring Boot 优雅地处理重复请求
前 言 对于一些用户请求,在某些情况下是可能重复发送的,如果是查询类操作并无大碍,但其中有些是涉及写入操作的,一旦重复了,可能会导致很严重的后果,例如交易的接口如果重复请求可能会重复下单。 重复的场…...
TailwindCSS 多主题色配置
TailwindCSS 多主题色配置 现在大多数网站都支持主题色变换,比如切换深色模式。那么我们该如何进行主题色配置呢? tailwind dark tailwind 包含一个 dark变体,当启用深色模式时,可以为网站设置不同样式 <div class"bg-whi…...
Vue3:表格单元格内容由:图标+具体内容 构成
一、背景 在Vue3项目中,想让单元格的内容是由 :图标具体内容组成的,类似以下效果: 二、图标 Element-Plus 可以在Element-Plus里面找是否有符合需求的图标iconfont 如果Element-Plus里面没有符合需求的,也可以在这…...
【项目日记(一)】高并发内存池项目介绍
💓博主CSDN主页:杭电码农-NEO💓 ⏩专栏分类:项目日记-高并发内存池⏪ 🚚代码仓库:NEO的学习日记🚚 🌹关注我🫵带你学习C 🔝🔝 项目日记 1. 前言2. 什么是高并发内存池…...
4-Docker命令之docker commit
1.docker commit介绍 docker commit命令是用于根据docker容器的改变创建一个新的docker镜像 2.docker commit用法 docker commit [参数] container [repository[:tag]] [rootcentos79 ~]# docker commit --helpUsage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG…...
RabbitMQ学习笔记10 综合实战 实现新商家规定时间内上架商品检查
配置文件: 记住添加这个。 加上这段代码,可以自动创建队列和交换机以及绑定关系。 我们看到了我们创建的死信交换机和普通队列。 我们可以看到我们队列下面绑定的交换机。 我们创建一个controller包进行测试: 启动: 过一段时间会变成死信队列…...
Project Euler 865 Triplicate Numbers(线性dp)
题目 能通过每次消除3个一样的数字,最终把数字消成空的数字是合法的, 求串长度不超过n的,没有前导0的数字中,合法的数字的个数 n10000,答案对998244353取模,只需要输出数字 思路来源 乱搞AC 题解 暴力…...
计算机网络测试题第二部分
前言:如果没有做在线测试请自主独立完成,本篇文章只作为学习计算机网络的参考,题库中的题存在一定错误和不完整,请学习时,查找多方书籍论证,独立思考,如果存在疑虑可以评论区讨论。查看时,请分清…...
linux 15day apache apache服务安装 httpd服务器 安装虚拟主机系统 一个主机 多个域名如何绑定
目录 一、apache安装二、访问控制总结修改默认网站发布目录 三、虚拟主机 一、apache安装 [rootqfedu.com ~]# systemctl stop firewalld [rootqfedu.com ~]# systemctl disable firewalld [rootqfedu.com ~]# setenforce 0 [rootqfedu.com ~]# yum install -y httpd [rootqfe…...
Linux和Windows环境下如何使用gitee?
1. Linux 1.1 创建远程仓库 1.2 安装git sudo yum install -y git 1.3 克隆远程仓库到本地 git clone 地址 1.4 将文件添加到git的暂存区(git三板斧之add) git add 文件名 # 将指定文件添加到git的暂存区 git add . # 添加新文件和修改过的…...
Docker安装教程
docker官网 1.卸载旧版 yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine2.配置Docker的yum库 安装yum工具 yum install -y yum-utils配置Docker的yum源 yum-config-ma…...
【PWN】学习笔记(二)【栈溢出基础】
课程教学 课程链接:https://www.bilibili.com/video/BV1854y1y7Ro/?vd_source7b06bd7a9dd90c45c5c9c44d12e7b4e6 课程附件: https://pan.baidu.com/s/1vRCd4bMkqnqqY1nT2uhSYw 提取码: 5rx6 C语言函数调用栈 一个栈帧保存的是一个函数的状态信息&…...
02-Nacos和Eureka的区别与联系
Nacos和Eureka的区别 联系 Nacos和Eureka整体结构类似: 都支持服务注册, 服务拉取, 采用心跳方式对服务提供者做健康监测的功能 区别 Nacos支持服务端主动检测服务提供者状态: 临时实例采用心跳模式,非临时实例采用主动检测模式但对服务器压力比较大(不推荐) 心跳模式: 服务…...
常见的Linux系统版本
在介绍常见的Linux系统版本之前,首先需要区分Linux系统内核与Linux发行套件系统的不同。Linux系统内核指的是一个由Linus Torvalds负责维护,提供硬件抽象层、硬盘及文件系统控制及多任务功能的系统核心程序。而Linux发行套件系统是我们常说的Linux操作系…...
基于JavaWeb+SSM+Vue微信小程序的科创微应用平台系统的设计和实现
基于JavaWebSSMVue微信小程序的科创微应用平台系统的设计和实现 源码获取入口Lun文目录前言主要技术系统设计功能截图订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 源码获取入口 Lun文目录 1系统概述 1 1.1 研究背景 1 1.2研究目的 1 1.3系统设计思想 1 2相关技术…...
【Spring Boot 源码学习】ApplicationListener 详解
Spring Boot 源码学习系列 ApplicationListener 详解 引言往期内容主要内容1. 初识 ApplicationListener2. 加载 ApplicationListener3. 响应应用程序事件 总结 引言 书接前文《初识 SpringApplication》,我们从 Spring Boot 的启动类 SpringApplication 上入手&am…...
HCIP---RSTP/MSTP
文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 前言 STP协议虽然能够解决环路问题,但是收敛速度慢,影响了用户通信质量。IEEE于2001年发布的802.1w标准定义了快速生成树协议RSTP(Rapid Spanning-Tree Proto…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
Java求职者面试指南:计算机基础与源码原理深度解析
Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...
Python网页自动化Selenium中文文档
1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...
jdbc查询mysql数据库时,出现id顺序错误的情况
我在repository中的查询语句如下所示,即传入一个List<intager>的数据,返回这些id的问题列表。但是由于数据库查询时ID列表的顺序与预期不一致,会导致返回的id是从小到大排列的,但我不希望这样。 Query("SELECT NEW com…...
Vue3中的computer和watch
computed的写法 在页面中 <div>{{ calcNumber }}</div>script中 写法1 常用 import { computed, ref } from vue; let price ref(100);const priceAdd () > { //函数方法 price 1price.value ; }//计算属性 let calcNumber computed(() > {return ${p…...
何谓AI编程【02】AI编程官网以优雅草星云智控为例建设实践-完善顶部-建立各项子页-调整排版-优雅草卓伊凡
何谓AI编程【02】AI编程官网以优雅草星云智控为例建设实践-完善顶部-建立各项子页-调整排版-优雅草卓伊凡 背景 我们以建设星云智控官网来做AI编程实践,很多人以为AI已经强大到不需要程序员了,其实不是,AI更加需要程序员,普通人…...
