0

我正在使用名为的数据框df

    Date    variable   Value
    1/1/2012 teamA     10
    1/1/2012 teamA     10


    1/1/2012 teamB    10

    1/1/2012 teamC     15

    1/2/2012 teamA    25

    1/2/2012 teamB     30

    1/2/2012 teamC     20

第二个数据框称为total

     Date      Total
    1/1/2012   50
    1/2/2012   70

我正在尝试创建一个 ggplot stack var 并在同一图表上为总数绘制一条趋势线,如下所示:

ggplot(df,aes(x=Date, y=Value, fill=(variable))) +
       geom_bar(stat="identity") + 
       theme_bw() + 
       opts(title = "Team Performance") + 
       xlab("Date") + ylab("Score") + 
       geom_smooth(data=Total,
                   aes(Date,Total,group=1), 
                   method="lm", size=2, color="darkblue")

我收到此错误:

Error in eval(expr, envir, enclos) : object 'variable' not found

当我自己这样做时:

ggplot(df,aes(x=Date, y=Value, fill=(variable))) +  
geom_bar(stat="identity") + theme_bw() 

有用

variable对象肯定在那里,有什么想法,我在这里做错了什么?

4

1 回答 1

1

美学以级联方式映射ggplot()到每一层。

这意味着这fill = variable是预期的geom_smooth,我猜没有什么叫variablein Total。使用 移动fill = variable到或取消geom_bar映射它geom_smoothfill = NULL

于 2012-10-18T15:05:00.057 回答