当前位置: 首页 > news >正文

绘图 Seaborn 10个示例

绘图 Seaborn

  • 是什么
  • 安装
  • 使用
    • 显示中文及负号
    • 散点图
    • 箱线图
    • 小提琴图
    • 堆叠柱状图
    • 分面绘图
    • 分类散点图
    • 热力图
    • 成对关系图
    • 线图
    • 直方图

是什么

Seaborn 是一个Python数据可视化库,它基于Matplotlib。Seaborn提供了高级的绘图接口,可以用来绘制各种统计图形,如线图、热图和分布图等,使得数据的可视化变得更加简单和快速。Seaborn的一些特点包括默认的美观度和自定义主题、多种可视化类型和方便的绘图函数等。Seaborn的使用也可以通过简单的代码完成,因此是一个非常流行的数据可视化工具。

安装

  1. 确认你已经安装了 Python 和 pip (Python 的包管理工具)。
    如果你没有安装,可以从官网下载安装:https:/https://www.python.org/downloads/

  2. 打开终端 (Windows 用户可以使用 PowerShell 或命令提示符)。

  3. 在终端中输入以下命令来安装 Seaborn:

    pip install seaborn
    
  4. 等待安装完成。

  5. 安装完成后,在 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()

在这里插入图片描述

上面的代码执行以下操作:
导入SeabornMatplotlib库。
使用sns.load_dataset()加载一个内置的示例数据集(在此示例中使用的是名为"tips"的数据集,包含了餐厅账单和小费数据)。
使用sns.scatterplot()创建一个散点图,指定xy轴的数据列以及数据集。
使用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()

在这里插入图片描述

http://www.lryc.cn/news/257265.html

相关文章:

  • airserver mac 7.27官方破解版2024最新安装激活图文教程
  • 文章解读与仿真程序复现思路——电力系统自动化EI\CSCD\北大核心《考虑移动式储能调度的配电网灾后多源协同孤岛运行策略》
  • Spring Boot 优雅地处理重复请求
  • TailwindCSS 多主题色配置
  • Vue3:表格单元格内容由:图标+具体内容 构成
  • 【项目日记(一)】高并发内存池项目介绍
  • 4-Docker命令之docker commit
  • RabbitMQ学习笔记10 综合实战 实现新商家规定时间内上架商品检查
  • Project Euler 865 Triplicate Numbers(线性dp)
  • 计算机网络测试题第二部分
  • linux 15day apache apache服务安装 httpd服务器 安装虚拟主机系统 一个主机 多个域名如何绑定
  • Linux和Windows环境下如何使用gitee?
  • Docker安装教程
  • 【PWN】学习笔记(二)【栈溢出基础】
  • 02-Nacos和Eureka的区别与联系
  • 常见的Linux系统版本
  • 基于JavaWeb+SSM+Vue微信小程序的科创微应用平台系统的设计和实现
  • 【Spring Boot 源码学习】ApplicationListener 详解
  • HCIP---RSTP/MSTP
  • 探索开源游戏的乐趣与无限可能 | 开源专题 No.47
  • springboot_3.2_freemark_基础环境配置
  • 【MySQL】MySQL 在 Centos 7环境安装教程
  • 有病但合理的 ChatGPT 提示语
  • this.$emit(‘update:isVisible‘, false)作用
  • CnetSDK .NET OCR Library SDK Crack
  • 基于Solr的全文检索系统的实现与应用
  • 【rabbitMQ】rabbitMQ控制台模拟收发消息
  • Java NIO, IO 整理
  • 【数据结构】——排序篇(下)
  • C++ 模拟实现vector