geom_line
Connect observations, ordered by x value.
Connect observations, ordered by x value.
Usage
geom_line(mapping = NULL, data = NULL, stat = "identity",
position = "identity", ...)
Arguments
- mapping
- The aesthetic mapping, usually constructed
with
aes
oraes_string
. Only needs to be set at the layer level if you are overriding the plot defaults. - 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
- ...
- other arguments passed on to
layer
. This can include aesthetics whose values you want to set, not map. Seelayer
for more details.
Aesthetics
p <- ggplot(mry, aes(x=year, y=number, group=rating))
p + geom_line() # Add aesthetic mappings
p + geom_line(aes(size = rating))
p + geom_line(aes(colour = rating)) # Change scale
p + geom_line(aes(colour = rating)) + scale_colour_gradient(low="red")
p + geom_line(aes(size = rating)) + scale_size(range = c(0.1, 3)) # Set aesthetics to fixed value
p + geom_line(colour = "red", size = 1) # Use qplot instead
qplot(year, number, data=mry, group=rating, geom="line") # Using a time series
qplot(date, pop, data=economics, geom="line")
qplot(date, pop, data=economics, geom="line", log="y")
qplot(date, pop, data=subset(economics, date > as.Date("2006-1-1")), geom="line")
qplot(date, pop, data=economics, size=unemploy/pop, geom="line") # Use the arrow parameter to add an arrow to the line
# See ?grid::arrow for more details
c <- ggplot(economics, aes(x = date, y = pop))
# Arrow defaults to "last"
library(grid)
c + geom_line(arrow = arrow())
c + geom_line(arrow = arrow(angle = 15, ends = "both", type = "closed")) # See scale_date for examples of plotting multiple times series on
# a single graph # A simple pcp example y2005 <- runif(300, 20, 120)
y2010 <- y2005 * runif(300, -1.05, 1.5)
group <- rep(LETTERS[1:3], each = 100) df <- data.frame(id = seq_along(group), group, y2005, y2010)
library(reshape2) # for melt
dfm <- melt(df, id.var = c("id", "group"))
ggplot(dfm, aes(variable, value, group = id, colour = group)) +
geom_path(alpha = 0.5)geom_path
: connect observations in data
order, geom_segment
: draw line segments,
geom_ribbon
: fill between line and x-axis