Python科研绘图--Task03

目录

图类型

关系类型图

散点图的例子

数据分布型图

rugplot例子

分类数据型图

​编辑回归模型分析型图

多子图网格型图

[FacetGrid() 函数](#FacetGrid() 函数)

[PairGrid() 函数](#PairGrid() 函数)

绘图风格、颜色主题和绘图元素缩放比例

绘图风格

颜色主题

绘图元素缩放比列


图类型

关系类型图

数据集变量间的相互关系和相互依赖的程度都可以通过统计分析变量间的相关性获知。

散点图的例子
python 复制代码
import matplotlib.pyplot as plt
import numpy as np

# 生成随机数据
np.random.seed(0)
x = np.random.randn(100)
y = x * np.random.randn(100)

# 创建散点图
plt.scatter(x, y, c='blue', alpha=0.5, edgecolors='none', s=50)

# 添加网格
plt.grid(True, linestyle='--', alpha=0.5)

# 添加标题和坐标轴标签
plt.title('精致的散点图')
plt.xlabel('X轴')
plt.ylabel('Y轴')

plt.show()

数据分布型图

在对数据进行分析或建模之前,我们需要先了解数据的分布情况,以及数据的覆盖范围、中心趋势、异常值等基本情况。

rugplot例子
python 复制代码
import seaborn as sns
import matplotlib.pyplot as plt

# 示例数据
data = sns.load_dataset('tips')['total_bill']

# 创建rugplot
sns.rugplot(data, height=0.5, color='blue')

plt.title('Rugplot 示例')
plt.xlabel('Total Bill')
plt.show()

分类数据型图

回归模型分析型图

我们可以使用回归模型分析型图表示数据集中变量间的关系,使用统计模型来估计两组变量间的关系。

多子图网格型图

相比 Matplotlib , Seaborn 提供了多个子图网格绘图函数,它们可快速实现分面图的展示。在面对按数据子集绘图、分行或分列显示子图和不同类型图组合等绘图要求时,多子图网格绘制功能不但可以一次性可视化展示数据集中各变量的变化情况,而且可以减少绘制复杂图的时间。

FacetGrid() 函数

FacetGrid() 函数可以实现行、列、色调 3 个维度的数值映射,其中,行、列维度与所得的轴阵列有明显的对应关系,色调变量可被视为沿深度轴的第三维,用不同的颜色绘制不同级别的数据。

python 复制代码
import Seaborn as sns
import matplotlib.pyplot as plt
g = sns.FacetGrid(df, col ='time', hue ='smoker') 
g.map(sns.regplot, "total_bill", "tip") 
g.add_legend()

PairGrid() 函数

PairGrid() 函数中,每个行和列都会被分配一个不同的变量,这就导致绘制结果为显示数据集中
成对变量间关系的图。这种图也被称为"散点图矩阵"。

python 复制代码
import Seaborn as sns
import matplotlib.pyplot as plt
penguins = sns.load_dataset("penguins")
x_vars = ["body_mass_g", "bill_length_mm", "bill_depth_mm",]
y_vars = ["body_mass_g"]
g = sns.PairGrid(penguins, hue="species", x_vars=x_vars, y_vars=y_vars)
g.map_diag(sns.histplot, color=".3")
g.map_offdiag(sns.scatterplot)
g.add_legend()

绘图风格、颜色主题和绘图元素缩放比例

Seaborn 通过下列函数设置颜色主题、绘图风格和绘图元素缩放比例。

python 复制代码
sns.set_style("style_name") #设置绘图风格
sns.set_palette("palette_name") #设置颜色主题
sns.set_context("context_name") #设置绘图元素缩放比例

提示:Seaborn 提供的 set_theme() 函数包含了上述 3 个函数的所有功能,即通过设置 set_theme() 函数中的参数 palette、style 和 context,就可分别控制颜色主题、绘图风格和绘图元素缩放比例。

绘图风格

使用 Seaborn 的 set_style() 函数并设置其参数 style ,即可设定图的绘制风格。参数 style 的可选值包括 darkgrid 、 whitegrid 、 dark 、 white 和 ticks ,参数 rc 则用于覆盖预设 Seaborn 样式字典中的值的参数映射,只更新样式中的一部分参数。

颜色主题

我们可通过 Seaborn 的 set_palette() 函数更改颜色主题,该函数包含多色系、单色系和双色
渐变色系 3 类颜色主题,不同颜色主题的显示效果可通过 sns.color_palette() 函数来查看。

绘图元素缩放比列

通过设置 Seaborn 中 set_context() 函数的参数 context ,我们可以实现对绘图元素的缩放处理。
参数 context 的可选值为 paper 、 notebook (默认)、 talk 和 poster ,缩放比例依次增大。

相关推荐
应用市场11 分钟前
Qt插件机制实现动态组件加载详解
开发语言·qt
小秋学嵌入式-不读研版12 分钟前
C65-枚举类型
c语言·开发语言·笔记
程序员爱钓鱼35 分钟前
Python编程实战 · 基础入门篇 | 什么是Python
后端·python
程序猿小D36 分钟前
【完整源码+数据集+部署教程】遥感图像道路检测分割系统源码和数据集:改进yolo11-CARAFE
python·yolo·计算机视觉·目标跟踪·数据集·yolo11·遥感图像道路检测分割系统
zy_destiny43 分钟前
【工业场景】用YOLOv8实现人员打电话识别
人工智能·python·深度学习·yolo·机器学习·计算机视觉·目标跟踪
FreeBuf_43 分钟前
Happy DOM曝CVSS 9.4严重RCE漏洞,PoC已公开(CVE-2025-61927)
java·c语言·c++·python·php
C嘎嘎嵌入式开发1 小时前
(10)100天python从入门到拿捏《Python中的数据结构与自定义数据结构》
数据结构·python·算法
熬了夜的程序员1 小时前
【LeetCode】69. x 的平方根
开发语言·算法·leetcode·职场和发展·动态规划
程序员杰哥1 小时前
Pytest与Unittest测试框架对比
自动化测试·软件测试·python·测试工具·测试用例·excel·pytest
草莓熊Lotso1 小时前
C++ 手写 List 容器实战:从双向链表原理到完整功能落地,附源码与测试验证
开发语言·c++·链表·list