Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在R中创建核密度图网格_R_Ggplot2 - Fatal编程技术网

如何在R中创建核密度图网格

如何在R中创建核密度图网格,r,ggplot2,R,Ggplot2,我有一些高维密度的样本,我想画出来。我喜欢创建一个网格,当它们交叉时,在其中绘制它们的双变量密度。例如,在Bayes and Big Data(贝叶斯和大数据)-一致性蒙特卡罗算法中,Scott et al.2016绘制了以下曲线图: 在该图中,对角线上方的分布比例刚好足够大,以适合该图。在下面的对角线中,双变量密度以通用比例绘制 有人知道我是如何实现这样的阴谋的吗 例如,如果我刚刚使用以下公式生成了一个5维高斯分布: library(MASS) data <- MASS::mvrnor

我有一些高维密度的样本,我想画出来。我喜欢创建一个网格,当它们交叉时,在其中绘制它们的双变量密度。例如,在Bayes and Big Data(贝叶斯和大数据)-一致性蒙特卡罗算法中,Scott et al.2016绘制了以下曲线图:

在该图中,对角线上方的分布比例刚好足够大,以适合该图。在下面的对角线中,双变量密度以通用比例绘制

有人知道我是如何实现这样的阴谋的吗

例如,如果我刚刚使用以下公式生成了一个5维高斯分布:

library(MASS)

data <- MASS::mvrnorm(n=10000, mu=c(1,2,3,4,5), Sigma = diag(5))

使用ggforce包中的facet_矩阵相对容易。您只需指定哪一层位于绘图的哪一部分,即layer.upper=1表示第一层geom_density2d应位于矩阵的上三角部分。geom_autodensity确保KDE接触绘图的底部

library(MASS)
library(ggforce)

data <- MASS::mvrnorm(n=10000, mu=c(1,2,3,4,5), Sigma = diag(5))

df <- as.data.frame(data)

ggplot(df) +
  geom_density2d(aes(x = .panel_x, y = .panel_y)) +
  geom_autodensity() +
  geom_point(aes(x = .panel_x, y = .panel_y)) +
  facet_matrix(vars(V1:V5), layer.upper = 1, layer.diag = 2)

更多关于facet_矩阵的详细信息已发布。

使用ggforce软件包中的facet_矩阵相对容易。您只需指定哪一层位于绘图的哪一部分,即layer.upper=1表示第一层geom_density2d应位于矩阵的上三角部分。geom_autodensity确保KDE接触绘图的底部

library(MASS)
library(ggforce)

data <- MASS::mvrnorm(n=10000, mu=c(1,2,3,4,5), Sigma = diag(5))

df <- as.data.frame(data)

ggplot(df) +
  geom_density2d(aes(x = .panel_x, y = .panel_y)) +
  geom_autodensity() +
  geom_point(aes(x = .panel_x, y = .panel_y)) +
  facet_matrix(vars(V1:V5), layer.upper = 1, layer.diag = 2)
关于facet_矩阵的更多细节已发布