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 ,缩放比例依次增大。

相关推荐
西阳未落38 分钟前
C语言中的内存函数(memcpy, memmove, memcmp, memset)
c语言·开发语言
xchenhao3 小时前
SciKit-Learn 全面分析分类任务 breast_cancer 数据集
python·机器学习·分类·数据集·scikit-learn·svm
axban3 小时前
QT M/V架构开发实战:QFileSystemModel介绍
开发语言·qt·架构
钢门狂鸭5 小时前
关于rust的crates.io
开发语言·后端·rust
Lionel_SSL5 小时前
《深入理解Java虚拟机》第三章读书笔记:垃圾回收机制与内存管理
java·开发语言·jvm
技术猿188702783516 小时前
PHP 与 WebAssembly 的 “天然隔阂”
开发语言·php·wasm
薄荷撞~可乐6 小时前
C#Task(Api)应用
开发语言·c#
独行soc6 小时前
2025年渗透测试面试题总结-66(题目+回答)
java·网络·python·安全·web安全·adb·渗透测试
another heaven8 小时前
【Qt VS2022调试时无法查看QString等Qt变量信息】解决方法
开发语言·qt
A黄俊辉A8 小时前
axios+ts封装
开发语言·前端·javascript