【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的数据集形式如下:

相关推荐
Swift社区20 分钟前
在 Swift 中实现字符串分割问题:以字典中的单词构造句子
开发语言·ios·swift
没头脑的ht22 分钟前
Swift内存访问冲突
开发语言·ios·swift
没头脑的ht25 分钟前
Swift闭包的本质
开发语言·ios·swift
wjs202427 分钟前
Swift 数组
开发语言
xiaoyalian1 小时前
R语言绘图过程中遇到图例的图块中出现字符“a“的解决方法
笔记·r语言·数据可视化
stm 学习ing1 小时前
FPGA 第十讲 避免latch的产生
c语言·开发语言·单片机·嵌入式硬件·fpga开发·fpga
湫ccc2 小时前
《Python基础》之字符串格式化输出
开发语言·python
mqiqe3 小时前
Python MySQL通过Binlog 获取变更记录 恢复数据
开发语言·python·mysql
AttackingLin3 小时前
2024强网杯--babyheap house of apple2解法
linux·开发语言·python