2014-04-10 67 views
0

我试图用“stat_sum_single”与因子变量,但我得到的错误:错误:无法找到函数“stat_sum_single” [GGPLOT2]

Error: could not find function "stat_sum_single" 

我试过因子变量转换成数字但它似乎并没有工作 - 任何想法?

全码:

ggplot(sn, aes(x = person,y = X, group=Plan, colour = Plan)) + 
       geom_line(size=0.5) + 
       scale_y_continuous(limits = c(0, 1.5)) + 
       scale_x_discrete(breaks = c(0,50,100), labels= c(0,50,100)) + 
       labs(x = "X",y = "%") + 
       stat_sum_single(mean, geom = 'line', aes(x = as.numeric(as.character(person))), size = 3, colour = 'red') 

数据:

Plan person X  m mad mmad 
1 1 95 0.323000 0.400303 0.12 
1 2 275 0.341818 0.400303 0.12 
1 3 2 0.618000 0.400303 0.12 
1 4 75 0.320000 0.400303 0.12 
1 5 13 0.399000 0.400303 0.12 
1 6 20 0.400000 0.400303 0.12 
2 7 219 0.393000 0.353350 0.45 
2 8 50 0.060000 0.353350 0.45 
2 9 213 0.390000 0.353350 0.45 
2 15 204 0.496100 0.353350 0.45 
2 19 19 0.393000 0.353350 0.45 
2 24 201 0.388000 0.353350 0.45 
3 30 219 0.567 0.1254 0.89 
3 14 50 0.679 0.1254 0.89 
3 55 213 0.1234 0.1254 0.89 
3 18 204 0.6135 0.1254 0.89 
3 59 19 0.39356 0.1254 0.89 
3 101 201 0.300 0.1254 0.89 

Person是一个因子可变的。

回答

2

函数stat_sum_single()不直接在库ggplot2中实现,但是该函数应在使用之前定义,如函数stat_summary()的帮助文件中所示。

stat_sum_single <- function(fun, geom="point", ...) { 
    stat_summary(fun.y=fun, colour="red", geom=geom, size = 3, ...) 
} 
+0

我只是使用了...并添加'stat_sum_single(平均)'的代码,但现在所有的不同线路的每个组都改变了... ...而不是创建一个平均线......除非我误解了'stat_sum_single'如何工作 – user2726449

+0

我假设你的意思是把它放在'stat_sum_single'函数中? – user2726449

+0

行'stat_sum_single(mean,geom =“line”)'应该工作(没有您添加的所有其他信息)。如果这不起作用,那么我不能帮助你,因为你没有提供数据。 –

相关问题