Python 的画图函数 seaborn 简介

seaborn 简介

seanborn 是 Python 的另外一个常用工具包,它基于 matplotlib,但画出的图形更加美观些,并且与 Pandas 的数据类型结合地较好。

# Import seaborn
import seaborn as sns
import matplotlib.pyplot as plt# Apply the default theme
sns.set_theme() # 应用 seaborn 的默认主题x = np.arange(0, 10,0.5)
y = np.sin(x)
plt.plot(x, y)
plt.show()

在这里插入图片描述

可以看出,应用 seaborn 的主题后,图形的配色变化了些。下面我们导入 seaborn 自带的数据集 tips。

# Load an example dataset
tips = sns.load_dataset("tips") # seaborn 自带的数据集,国内导入网速慢可能出错,可以把数据集提前从 github 上下载到电脑里
print(tips)
type(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[244 rows x 7 columns]pandas.core.frame.DataFrame

可以看出,tips 数据集载入后,是 Pandas 的 DataFrame 类型,seaborn 可以方便地针对 DataFrame 数据集画图。下面,我们以其中的relplot 函数为例,讲解如何使用 seanborn 画图。relplot 函数的基本用法如下:

relplot(data=None, x=None, y=None, row=None, col=None,hue=None, kind='scatter', **kwargs)
data输入的数据,常见的数据类型,例如 Pandas 或 Numpy 中的数据
x横坐标数据
y纵坐标数据
row/col将数据按行或列划分为子数据集,生成多个子图
hue颜色,可以是数值类型或类别数据
kind图像类型,'line' 或 ‘scatter'
**kwargs其他参数,例如 style,sizes 等

sns.relplot(data = tips, x = "total_bill", y="tip", hue = 'smoker', # 按是否吸烟生成不同的颜色col = 'sex', # 按不同性别生成子图style = 'smoker' # 按是否吸烟生成不同的点形
)
plt.show()

在这里插入图片描述

生成线图时,相同横坐标的数据将会合并,并且,图像会显示均值以及 95% 的置信区间:

sns.relplot(data = tips, x = "day", y="tip", hue = 'smoker', # 按是否吸烟生成不同的颜色kind = 'line'
)
plt.show()

在这里插入图片描述

seaborn 自带一些函数生成常见的图形,例如barplot生成条形图,histplot生成直方图,boxplot生成箱线图:

sns.barplot(data = tips, x = "day", y="tip", hue = 'smoker', # 按是否吸烟生成不同的颜色
)
plt.show()

在这里插入图片描述

sns.histplot(data = tips, x = "tip", 
)
plt.show()

在这里插入图片描述

sns.boxplot(data = tips, x = "day",y = "tip", 
)
plt.show()

在这里插入图片描述

seaborn 还有其他一些画图函数,例如heatmap生成热力图,violinplot生成小提琴图,限于篇幅,本文不再赘述,有兴趣的读者可以查阅官方文档。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最佳实践:TiDB 业务读变慢分析处理

作者:李文杰 网易游戏计费 TiDB 负责人 在使用或运维管理 TiDB 的过程中,大家几乎都遇到过 SQL 变慢的问题,尤其是查询相关的读变慢问题。读变慢的问题大部分情况下都遵循一定的规律,通过经验的积累可以快速的定位和优化&#xff…

数字货币量化交易平台

数字货币量化交易平台是近年来金融科技领域迅速崛起的一种创新型交易方式。它通过应用数学模型和算法策略,实现对数字货币市场的自动交易和风险控制。然而,要在这个竞争激烈的领域中脱颖而出,一个数字货币量化交易平台需要具备足够的专业性&a…

基于 Docker 的 MySQL 主从复制搭建(Mac M1版本)

系统:Macbook M1 镜像版本:mysql:5.7 如果是要查 slave连接不上 master的问题,可以直接跳到文章末尾踩坑处 准备工作 拉取镜像 docker pull mysql:5.7本地数据卷挂载 因为mysql不挂载的话,重启丢失数据,所以在本地创…

QLabel控件使用

Qt为我们应用程序界面开发提供的一系列的控件,下面我们介绍两种最常用一些控件,所有控件的使用方法我们都可以通过帮助文档获取。 1.QLabel控件使用 QLabel是我们最常用的控件之一,其功能很强大,我们可以用来显示文本&#xff0c…

《安富莱嵌入式周报》第321期:开源12导联便携心电仪,PCB AI设计,150M示波器差分探头,谷歌全栈环境IDX,微软在Excel推出Python

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版: https://www.bilibili.com/video/BV1ju4y1D7A8/ 《安富莱嵌入式周报》第321期:开源12导…

打破数据孤岛!时序数据库 TDengine 与创意物联感知平台完成兼容性互认

新型物联网实现良好建设的第一要务就是打破信息孤岛,将数据汇聚在平台统一处理,实现数据共享,放大物联终端的行业价值,实现系统开放性,以此营造丰富的行业应用环境。在此背景下,物联感知平台应运而生&#…

入职字节外包一个月,我离职了

有一种打工人的羡慕,叫做“大厂”。 真是年少不知大厂香,错把青春插稻秧。 但是,在深圳有一群比大厂员工更庞大的群体,他们顶着大厂的“名”,做着大厂的工作,还可以享受大厂的伙食,却没有大厂…

学习JAVA打卡第四十五天

StringBuffer类 StringBuffer对象 String对象的字符序列是不可修改的,也就是说,String对象的字符序列的字符不能被修改、删除,即String对象的实体是不可以再发生变化,例如:对于 StringBuffer有三个构造方法&#xff…

程序与进程

一、程序是怎么被执行的 1.在程序中,由引导代码去调用程序中得main函数,而这个过程由链接器完成,链接器将引导代码链接到我们的应用程序构成可执行文件。 2.程序运行需要通过操作系统的加载器来实现,加载器是操作系统中的程序&a…

界面控件Telerik UI for WPF——Windows 11主题精简模式提升应用体验

Telerik UI for WPF拥有超过100个控件来创建美观、高性能的桌面应用程序,同时还能快速构建企业级办公WPF应用程序。Telerik UI for WPF支持MVVM、触摸等,创建的应用程序可靠且结构良好,非常容易维护,其直观的API将无缝地集成Visua…

AI自动驾驶也“区分人种”?有色人种和儿童面临更高碰撞风险

8月27日消息,随着人工智能(AI)的快速发展,尤其是在自动驾驶汽车领域,这项技术给人类带来了巨大的便利。 然而,据最新的研究发现,自动驾驶汽车中的行人检测软件可能存在一些严重问题,…

Linux 内核动态打印调试(dev_info、 dev_dbg )

目录 前言 1 printk消息级别 2 调整内核printk打印级别 3 dev_xxx函数简介 4 配置内核使用动态打印 5 动态调试使用方法 6 动态打印调试的基本原理 🎈个人主页🎈:linux_嵌入式大师之路的博客-CSDN博客🎉🎉&…