R 两种密度中只有一种显示在ggplot2中

R 两种密度中只有一种显示在ggplot2中,r,plot,ggplot2,statistics,R,Plot,Ggplot2,Statistics,因此,我有两组数据(长度不同),我试图将其分组并显示密度图: dat <- data.frame(dens = c(nEXP,nCNT),lines = rep(c("Exp","Cont"))) ggplot(dat, aes(x = dens, group=lines, fill = lines)) + geom_density(alpha = .5) dat所以我不知道为什么,但基本上我只需要手动执行rep()函数: A<-data.frame(ExpN, key = "ex

因此,我有两组数据(长度不同),我试图将其分组并显示密度图:

dat <- data.frame(dens = c(nEXP,nCNT),lines = rep(c("Exp","Cont")))
ggplot(dat, aes(x = dens, group=lines, fill = lines)) + geom_density(alpha = .5)

dat所以我不知道为什么,但基本上我只需要手动执行rep()函数:

A<-data.frame(ExpN, key = "exp")
B<-data.frame(ConN,key = "con")
colnames(A) <- c("a","key")
colnames(B) <- c("a","key")
dat <- rbind(A,B)
ggplot(dat, aes(x = dens, fill = key)) + geom_density(alpha = .5) 

A您需要告诉
rep
每个元素要重复多少次才能对齐

dat <- data.frame(dens = c(nEXP,nCNT),
                  lines = rep(c("Exp","Cont"), c(length(nEXP),length(nCNT)))
dat
c()
函数将这两个向量合并为一个向量。尝试使用
list()
。我还认为rep()调用可能是错误的,您需要使用
每个
参数。(但这可能无法与列表结构很好地结合,因此您真正应该做的是发布一个工作示例。
dat <- data.frame(dens = c(nEXP,nCNT),
                  lines = rep(c("Exp","Cont"), c(length(nEXP),length(nCNT)))