geom_errorbar(mapping = NULL, data = NULL, stat = "identity",
position = "identity", ...)
aes
or aes_string
. Only needs to be set
at the layer level if you are overriding the plot defaults.# Define the top and bottom of the errorbars limits <- aes(ymax = resp + se, ymin=resp - se)
p <- ggplot(df, aes(fill=group, y=resp, x=trt)) p + geom_bar(position="dodge", stat="identity")
# Because the bars and errorbars have different widths # we need to specify how wide the objects we are dodging are dodge <- position_dodge(width=0.9) p + geom_bar(position=dodge) + geom_errorbar(limits, position=dodge, width=0.25)
p <- ggplot(df2, aes(fill=group, y=resp, x=trt)) p + geom_bar(position=dodge) p + geom_bar(position=dodge) + geom_errorbar(limits, position=dodge, width=0.25)
p <- ggplot(df, aes(colour=group, y=resp, x=trt)) p + geom_point() + geom_errorbar(limits, width=0.2) p + geom_pointrange(limits) p + geom_crossbar(limits, width=0.2)
# If we want to draw lines, we need to manually set the # groups which define the lines - here the groups in the # original dataframe p + geom_line(aes(group=group)) + geom_errorbar(limits, width=0.2)
geom_pointrange
: range indicated by straight line,
with point in the middle; geom_linerange
: range indicated
by straight line; geom_crossbar
: hollow bar with middle
indicated by horizontal line; stat_summary
: examples of
these guys in use, geom_smooth
for continuous analog