论证" env"缺少,没有默认的qplot或ggplot R.

时间:2015-07-22 15:30:10

标签: r ggplot2 density-plot

我有一个包含3列的数据集,我试图将pdf绘制为列ID。这是我的数据的哪一部分。

        day          ID   count
        8754     48112050     1
        8975     48112050     3
        8327     61010046     2
        8346     61010046  3997
        8506     61010046     1
        8605     61010046     1

我使用qplot:

qplot(count, colour=factor(ID), data=df, geom="density")

或ggplot:

ggplot(df, aes(x=count, colour= ID))+geom_density()

但它没有为所有ID绘制pdf。当我深入研究时,我意识到qplot或ggplot生成的图中只缺少在我的数据中不再 2次出现的ID。在此示例中,ID:48112050。

我只绘制此ID的密度,并且它有效。

         day          ID   count
        8754     48112050     1
        8975     48112050     3

但是,当我将df限制为仅包含此ID或仅出现2次的任何ID时,qplot或ggplot会给我以下错误:

Error in exists(name, envir = env, mode = mode) : 
argument "env" is missing, with no default

这是否意味着qplot / ggplot需要至少3个点来绘制密度函数?

1 个答案:

答案 0 :(得分:2)

看起来ggplot2_1.0.1确实需要至少三个点来估算密度。但是,此行为在2015年6月12日的this commit github存储库中似乎已更改。目前在CRAN上的版本于3月发布。我不确定何时期待ggplot2的下一个版本。如果这种行为对你很重要,你可以尝试直接从github中提取源代码,