科研学习|可视化——相关性结果的可视化

news2024/11/29 2:52:59

一、相关性分析介绍

相关性分析是指研究两种或者两种以上的变量之间相关关系的统计分析方法,一般分析步骤为:

  • 1)判断变量间是否存在关联;
  • 2)分析关联关系(线性/非线性)、关联方向(正相关/负相关)、关联数量(单相关/复相关/偏相关)和关联强度(显著相关/高度相关/中度相关/弱相关)等关联特征。

常用于度量两个或多个变量之间相关程度的指标有:

如何把这些关联特征表达得更易于理解,那就需要借助将相关性分析结果可视化的方法了。

在平时的论文阅读中我们经常看到有关相关性分析的内容,作者们根据自己的表达需求,也向我们展示了五花八门的绘图样式,比如:散点图、拟合线、相关矩阵(热力图)、相关性空间分布图等。接下来详细向大家介绍这些图表的特点。

二、散点图

一般情况下我们可以通过散点图来检测和了解变量间的关系。如果变量之间存在某种关联,那么数据点就会在图上呈现某种趋势。在某些情况下(如样本点较少),可能会出现聚集趋势不明显的问题,这时我们可以借助线性拟合而成的“趋势线”来辅助分析。

如下图a中,利用散点图展现了SSP126、SSP245、SSP370和SSP585排放情景下未来降水增长率与未来气温增长率之间的约束关系。由于单个情景下的散点数量较少,且多个情景的散点放置于同一张图中进行比较,散点的聚集趋势难以肉眼捕捉,因此该图对各个场景下的散点进行线性拟合,展现出散点的分布趋势线,便于读者更为直观地解读。

  1. 这类散点图可借助Python实现,可参考:“Python-matplotlib 学术散点图 EE 统计及绘制”
  2. 也可以借助R语言实现,可参考:“R-ggplot2 学术散点图绘制”

三、散点密度图

若需对数据量很大的变量相关性进行可视化,可考虑在散点图的基础上添加热力图元素,即通过将数据计数映射到颜色,来表现数据的分布情况

下图为无云日GRSAD模拟的逐月湖泊面积与另一个数据集的6715个湖泊逐月面积的比较。图a显示了两个变量之间分布的密集程度,并通过添加辅助线的方式,在图中显示相应点对应的拟合效果(即R2 — 决定系数,相关系数的平方)。

  1. 使用Matlab绘制散点密度图,可参考:“如何使用Matlab绘制hist2d/密度散点图” — 
  2. 还可通过R语言绘制,可参考:“Density 2d” — https://r-graph-gallery.com/2d-

四、相关性空间分布图

当需要在流域、全国、甚至全球这样的大空间尺度上进行相关性分析时,简单的散点图+拟合线难以表达出相关性的空间变异性。此时,在每个网格单元上计算变量之间的相关系数,并绘制其空间分布图,会是一个很好的选择。

例如,下图展示了1982-2015年北纬30°以上的地区植被生长与水资源可用性指数之间相关性的空间分布及相应的统计值。图中的黑色原点表示该点所在计算单元的相关系数通过了显著性检验(p<0.05)。

  1. 可通过Matlab计算栅格数据相关性及其显著性(M-K检验),参考:“【Matlab】栅格数据相关分析及显著性检验”

五、相关性矩阵图

相关性矩阵图的表达优势在于单个图上丰富的颜色变化可直观反映数据信息,同时,矩阵上还可以同时显示对应的p-value数值,添加其他图形元素等,在一张图中展现出多个变量间的关联方向、关联数量和关联强度等关联特征。

如下图的图(a)和图(b)分别利用了相关性矩阵图来验证策略a和a+下增强回归树(BRT)模型在时间尺度上的性能。该矩阵中的绿色色块越多且越深,则说明该策略下的训练数据和测试数据的相关性越高;反之,深棕色色块越多且越深,则说明该策略下的训练数据和测试数据的相关性越低。

相关性矩阵图除了上图的表达方式外,还可根据自己的需求对图的颜色、图例、数值标签等特征进行调整,一般可以通过R语言的corrplot包、corrgram包、GGally包、ggcorrplot包等实现,参考:

“超多类别!这个相关性矩阵绘制工具绝了!”

“corrplot包可视化相关性矩阵的详细教程”

六、成对矩阵图

成对矩阵图融合了散点图、关系拟合线、概率分布图以及相关系数值。能将图和表格数据结合起来,真正做到一图胜千言!适用于多变量相关性分析的可视化。

成对矩阵图可通过R语言的ggpair函数实现方法,参考:

“Pairs plot with ggpairs” — https://r-charts.com/correlatio

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UE5、CesiumForUnreal实现加载建筑轮廓GeoJson数据生成白模功能

1.实现目标 在UE5.3中,通过加载本地建筑边界轮廓面GeoJson数据,获取底面轮廓和楼高数据,拉伸生成白模,并支持点选高亮。为防止阻塞Game线程,使用了异步任务进行优化,GIF动图如下所示: 其中建筑数量:128871,顶点索引数量:6695748,三角面数量:2231916,顶点数量:165…

4.11 QT tcp群聊

头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpSocket>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);~Widget();private …

51单片机学习笔记——LED点亮

一、独立按键控制LED元器件和原理图 根据厂家给的原理图找到独立按键模块&#xff0c;观察下图我们知道按钮的一个头接GND&#xff0c;一头接IO口。由此可知我们如果需要使用第一个按钮则需要用p31。 二、独立按键控制LED程序 程序编写需要使用到IF else语句 当如果P310时P20…

【canvas】canvas基础使用(六):图形阴影

简言 学习使用canvas的阴影属性。 阴影 shadowBlur 阴影模糊 CanvasRenderingContext2D.shadowBlur 是 Canvas 2D API 描述模糊效果程度的属性&#xff1b;它既不对应像素值也不受当前转换矩阵的影响。默认值是 0。 语法&#xff1a; ctx.shadowBlur level; 选项值&#x…

【已解决】VMware Horizon Client: 无法建立安全加密链路连接

文章目录 问题原因解决方法方法1&#xff1a;在HTTPS拦截中添加VMware忽略列表 (推荐)方法2&#xff1a; 只拦截 浏览器进程的请求 / 取消 HTTPS 拦截&#xff08;如果没有拦截HTTPS的必要 / 只针对浏览器请求&#xff0c;可以使用此方法&#xff09; 当前使用mac 编辑&#xf…

leetcode328.奇偶链表

1. 题目描述 在线练习 2. 解题思路 这道题&#xff0c;官方给的是中等难度。其实是一道基础题&#xff0c;大家应该都可以写得出来。 题目中给的示例可以清楚的看到&#xff0c;合并前后的奇偶链的各自包含的节点的顺序是不变的&#xff0c;我们基本可以确定使用尾插法来合并…

vue2+codemirror代码渲染,实现滚动到指定行(三 滚动指定行)

vue2+codemirror代码渲染,当代码量过大时,在几千行的代码中找到所需的方法类比较困难。这时我们需要跳转到具体方法类,代码滚动到方法类所在的代码行。 这里需要先把光标指向到指定行,再滚动到该行, 亲测好用 scrollToLine(n) {// 将光标设置到第n行的第一个字符this.c…

量子城域网系列(二):量子密钥与通信系统中各层协议融合应用

写在前面。国家标准中对量子保密通信的定义&#xff1a;量子保密通信是利用QKD与其他密码技术结合形成的保密通信技术。 经过这段时间的讨论&#xff0c;我们基本上明白了量子保密通信的内涵、基础协议、技术原理等。我们知道了当前语境下的量子密钥分发网络核心是实现两点之间…

【ROS2笔记三】构建ROS2功能包

3.构建ROS2功能包 文章目录 3.构建ROS2功能包3.1ROS2中包的组成部分3.2创建ROS2功能包并编写节点3.2.1使用CMake创建功能包3.2.2编写cpp节点代码 3.3编译运行节点3.4使用面向对象的方式编写ROS2节点3.5使用RCLPY编写节点Reference 3.1ROS2中包的组成部分 ROS2可以使用CMake或者…

ELK日志分析系统+Filebeat

目录 一、Filebeat介绍 1、Filebeat简介 2、Filebeat的工作方式 3、filebeat工作流程 4、Filebeat的作用 5、filebeat的用途 1.为什么要用filebeat来收集日志&#xff1f;为什么不直接用logstash收集日志&#xff1f; 2.filebeat和logstash的区别 二、部署(ELFK)Fileb…

【web开发01】前端开发HTML、CSS-新浪新闻的实现

前端开发HTML、CSS-新浪新闻的实现 1 实现标题排版1.1图片连接的三种方式1.2 具体代码1.3 总结1.< h1>到< h6>是标题从大到小 2 实现标题样式2.1 css的三种引入方式2.2 颜色的三种表示2.3 css选择器2.4 超链接 3 实现正文排版3.1 视频标签 video3.2 音频标签 audio…

【网安小白成长之路】6.pkachu、sql-lbas、upload-lbas靶场搭建

&#x1f42e;博主syst1m 带你 acquire knowledge&#xff01; ✨博客首页——syst1m的博客&#x1f498; &#x1f51e; 《网安小白成长之路(我要变成大佬&#x1f60e;&#xff01;&#xff01;)》真实小白学习历程&#xff0c;手把手带你一起从入门到入狱&#x1f6ad; &…

Python操作MongoDB - 常用操作

1、连接MongoDB 可以下载使用客户端&#xff1a;MangoDB Compass # 连接数据库&#xff0c;INT_MONGO是INT环境mongo的连接串 mongo_client pymongo.MongoClient(INT_MONGO)2、访问数据库 # 访问数据库Pytest db mongo_client["Pytest"]3、创建集合&#xff08;…

文件加密软件大全,按市场份额排名

文件加密软件大全&#xff0c;按市场份额排名 文件加密是一种保护数据安全的重要手段&#xff0c;通过使用特定的算法将明文文件转化为密文&#xff0c;以防止未经授权的访问、篡改或泄露&#xff0c;市场份额排名的八款软件你需要了解一下。 1、安企神软件 专注于加密和审计…

漏洞挖掘 SSRF 一次很菜的SSRF低危小通杀

前言 一转眼貌似很长时间都没更新博客了&#xff0c;甚至连标题的大小和格式都有点忘了&#xff0c;今后应该尽量保持每周更新一次&#xff0c;主要是平常上课太忙了&#xff0c;在学校还总是不定时会刷新一些烂事&#xff0c;就耽误了很多时间。这篇文章用于记载我最近的一次…

深入理解MD5算法:原理、应用与安全

title: 深入理解MD5算法&#xff1a;原理、应用与安全 date: 2024/4/11 20:55:57 updated: 2024/4/11 20:55:57 tags: MD5算法数据安全哈希函数摘要算法安全漏洞SHA算法密码学 第一章&#xff1a;引言 导言 在当今数字化时代&#xff0c;数据安全和完整性变得至关重要。消息…

gradio简单搭建——关键词简单筛选【2024-4-11优化】

gradio简单搭建——关键词简单筛选[2024-4-11 优化] 新的思路&#xff1a;标签自动标注界面搭建优化数据处理与生成过程交互界面展示 新的思路&#xff1a;标签自动标注 针对通过关键词&#xff0c;在文本数据中体现出主体的工作类型这一任务&#xff0c;这里使用展示工具grad…

Claude使用教程

claude 3 opus面世后&#xff0c;网上盛传吊打了GPT-4。网上这几天也已经有了许多应用&#xff0c;但竟然还有很多小伙伴不知道国内怎么用gpt&#xff0c;也不知道怎么去用这个据说已经吊打了gpt-4的claude3。 今天我们想要进行的一项尝试就是—— 用claude3和gpt4&#xff0c…

猝不及防 CCF-B ICPP 2024投稿延期至4月22日提交摘要 机会来了别错过

会议之眼 快讯 第53届ICPP&#xff08;International Conference on Parallel Processing&#xff09;即国际并行处理会议将于 2024年 8月12日-15日在瑞典哥特兰岛举行&#xff01;ICPP是世界上最古老的连续举办的并行计算计算机科学会议之一。它是学术界、工业界和政府的研究…

Vue项目页面中快速使用JSON数据格式化模块插件

页面中快速使用JSON数据格式化模块插件 JSON数据格式化模块插件&#xff0c;可以用来展示JSON数据&#xff0c;也可以验证某数据是否为JSON格式 1、可以使用 b-code-editor插件 来实现效果&#xff0c;方便快捷&#xff0c; 安装命令&#xff1a;npm install bin-code-editor…