使用ggplot2在R中绘制两个或更多ecdf

时间:2016-03-21 14:27:18

标签: r ggplot2

大家。我正在从文件中读取两个数字向量,我想使用ggplot2在一个图上绘制两个ecdf,但我似乎失败了:

>exp = rnorm(100)
>cont = rnorm(100)
> ggplot() + stat_ecdf(data = exp) + stat_ecdf(data = cont)
Error: ggplot2 doesn't know how to deal with data of class numeric

如何在不出现此类错误的情况下将它们拼接在一起?

1 个答案:

答案 0 :(得分:1)

library(ggplot2)
var1 = rnorm(100)
var2 = rnorm(100)
DF <- data.frame(variable=rep(c('var1', 'var2'), each=100), value=c(var1, var2))
ggplot(DF) + stat_ecdf(aes(value, color=variable))

您收到错误是因为您没有使用data.frame,这应该是ggplot2中的基本做法。此外,您缺少处理变量时必需的aes。最后,尝试仅使用stat_ecdf一次,并使用colorshape等来区分不同的变量。