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

相关推荐
AI街潜水的八角26 分钟前
Python电脑屏幕&摄像头录制软件(提供源代码)
开发语言·python
hadage23328 分钟前
--- git 的一些使用 ---
开发语言·git·python
lly2024062 小时前
HTML与CSS:构建网页的基石
开发语言
一只会写代码的猫2 小时前
面向高性能计算与网络服务的C++微内核架构设计与多线程优化实践探索与经验分享
java·开发语言·jvm
是小胡嘛4 小时前
C++之Any类的模拟实现
linux·开发语言·c++
csbysj20205 小时前
Vue.js 混入:深入理解与最佳实践
开发语言
Gerardisite7 小时前
如何在微信个人号开发中有效管理API接口?
java·开发语言·python·微信·php
Want5957 小时前
C/C++跳动的爱心①
c语言·开发语言·c++
coderxiaohan7 小时前
【C++】多态
开发语言·c++
gfdhy7 小时前
【c++】哈希算法深度解析:实现、核心作用与工业级应用
c语言·开发语言·c++·算法·密码学·哈希算法·哈希