【R语言】边缘概率密度图

边缘概率密度图是一种在多变量数据分析中常用的图形工具,用于显示每个单独变量的概率密度估计。它通常用于散点图的边缘,以便更好地理解单个变量的分布情况,同时保留了散点图的相关性信息。
在边缘概率密度图中,每个变量的概率密度估计通常通过直方图或核密度估计(KDE)进行计算。直方图将变量的值范围分成若干个区间,并统计每个区间中观察值的数量,然后将数量除以总观察值数量得到概率密度。而核密度估计则是通过在每个数据点周围放置核函数,并根据核函数的形状和宽度来估计概率密度。
边缘概率密度图通常与散点图一起显示,其中散点图展示了两个变量之间的关系,而边缘概率密度图则展示了每个变量的分布情况。这有助于发现变量之间的相关性以及每个变量的个体特征。如下图所示:

代码如下:

R 复制代码
library("ggExtra")
library("ggplot2")

piris <- ggplot(iris, aes(Sepal.Length, Sepal.Width, colour = Species)) +
  geom_point()
ggMarginal(piris, groupColour = TRUE, groupFill = TRUE)
  • piris <- ggplot(iris, aes(Sepal.Length, Sepal.Width, colour = Species)) + geom_point():首先,创建了一个散点图 piris,其中 x 轴表示 Sepal.Length(花萼长度),y 轴表示 Sepal.Width(花萼宽度),并根据 Species(鸢尾花种类)变量进行颜色编码。

  • ggMarginal(piris, groupColour = TRUE, groupFill = TRUE):然后,使用 ggMarginal() 函数对 piris 图进行了包装,以创建带有边际图的散点图。参数 groupColour = TRUEgroupFill = TRUE 用于在边际图中反映颜色组。这意味着对于每个不同的鸢尾花种类,都会生成一个单独的边际图,以反映该组中的数据分布情况。

iris的数据集形式如下:

相关推荐
暮冬-  Gentle°4 小时前
C++中的命令模式实战
开发语言·c++·算法
Volunteer Technology7 小时前
架构面试题(一)
开发语言·架构·php
清水白石0087 小时前
Python 对象序列化深度解析:pickle、JSON 与自定义协议的取舍之道
开发语言·python·json
2401_876907527 小时前
Python机器学习实践指南
开发语言·python·机器学习
努力中的编程者7 小时前
栈和队列(C语言底层实现环形队列)
c语言·开发语言
码不停蹄Zzz8 小时前
C语言——神奇的static
java·c语言·开发语言
CoderCodingNo8 小时前
【GESP】C++七级考试大纲知识点梳理, (1) 数学库常用函数
开发语言·c++
老鱼说AI9 小时前
CUDA架构与高性能程序设计:异构数据并行计算
开发语言·c++·人工智能·算法·架构·cuda
子超兄10 小时前
线程池相关问题
java·开发语言
dinl_vin11 小时前
python:常用的基础工具包
开发语言·python