In ggplot2 I'm attempting a simple thing that I just can't get for some reason. I have adjusted means and SE in a data frame and want to plot the means, error bars and then connect the means with points. Here's the code and the error (it does everything except connect the means with geom_line
(working with RCookbook:
library(ggplot2)
#data set
data1 <- structure(list(group = structure(1:3, .Label = c("1", "2", "3"
), class = "factor"), estimate = c(55.7466654122763, 65.0480954172939,
61.9552391704298), SE = c(2.33944612149257, 2.33243565412438,
2.33754952927041), t.ratio = c(23.8290016171476, 27.8884844271143,
26.5043535525714)), .Names = c("group", "estimate", "SE", "t.ratio"
), row.names = c(NA, 3L), class = "data.frame")
#the attempted plot
pd <- position_dodge(.1)
ggplot(data1, aes(x=group, y=estimate, group=group)) +
geom_errorbar(aes(ymin=estimate-SE, ymax=estimate+SE),
colour="black", width=.1, position=pd) +
geom_line(data=data1, aes(x=group, y=estimate)) +
geom_point(position=pd, size=4)
the error:
ymax not defined: adjusting position using y instead
geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?