geom_ribbon {ggplot2} | R Documentation |
Ribbons, y range with continuous x values.
geom_ribbon(mapping = NULL, data = NULL, stat = "identity", position = "identity", na.rm = FALSE, ...)
mapping |
The aesthetic mapping, usually constructed
with |
data |
A layer specific dataset - only needed if you want to override the plot defaults. |
stat |
The statistical transformation to use on the data for this layer. |
position |
The position adjustment to use for overlappling points on this layer |
na.rm |
If |
... |
other arguments passed on to
|
geom_ribbon
understands the following aesthetics (required aesthetics are in bold):
x
ymax
ymin
alpha
colour
fill
linetype
size
geom_bar
for discrete intervals (bars),
geom_linerange
for discrete intervals
(lines), geom_polygon
for general polygons"
# Generate data huron <- data.frame(year = 1875:1972, level = as.vector(LakeHuron)) library(plyr) # to access round_any huron$decade <- round_any(huron$year, 10, floor) h <- ggplot(huron, aes(x=year)) h + geom_ribbon(aes(ymin=0, ymax=level)) h + geom_area(aes(y = level)) # Add aesthetic mappings h + geom_ribbon(aes(ymin=level-1, ymax=level+1)) h + geom_ribbon(aes(ymin=level-1, ymax=level+1)) + geom_line(aes(y=level)) # Take out some values in the middle for an example of NA handling huron[huron$year > 1900 & huron$year < 1910, "level"] <- NA h <- ggplot(huron, aes(x=year)) h + geom_ribbon(aes(ymin=level-1, ymax=level+1)) + geom_line(aes(y=level)) # Another data set, with multiple y's for each x m <- ggplot(movies, aes(y=votes, x=year)) (m <- m + geom_point()) # The default summary isn't that useful m + stat_summary(geom="ribbon", fun.ymin="min", fun.ymax="max") m + stat_summary(geom="ribbon", fun.data="median_hilow") # Use qplot instead qplot(year, level, data=huron, geom=c("area", "line"))