10

我正在尝试生成一个散点图矩阵,其中对角线中有密度图(最好使用 ggplot)。ggpairsGGally 包中的文档说明:

diag 是一个列表,可能只包含变量“连续”和“离散”。诊断列表的每个元素都是一个实现以下选项的字符串:连续 = ('density', 'bar', 'blank'); 离散的 = ('bar', 'blank') 中的一个。

这表明(??)这应该可以使用diag=list(continuous="density").

但是下面的代码:

xx <- mtcars[,c(1,3,4,6)]   ## extract mpg, disp, hp, and wt from mtcars
library(GGally)
ggpairs(xx,diag=list(continuous="density"))

给出了这个:

我究竟做错了什么?

注意:尝试做同样的事情plotmatrix(xx)会给出:

这失败了,因为密度图显然是使用基于完整数据xxxx(结果,第二行 (disp) 看起来不错,因为 disp 的范围最大,但第 1 行和第 4 行被压缩了。

4

1 回答 1

11

所以我终于想通了,通过在这里研究一个不同的问题。事实证明,除非axisLabels设置为"show",否则对角线上的密度图会被抑制,不会发出警告。

xx <- mtcars[,c(1,3,4,6)]   ## extract mpg, disp, hp, and wt from mtcars
library(GGally)
ggpairs(xx, diag=list(continuous="density"), axisLabels='show')

正如预期的那样产生这个:

于 2013-12-04T20:30:39.183 回答