Time Series Plots in Base R

This section is a short introduction to time series plots in R. You can use the analogy with the scatterplots where the horizontal axis is time.

R base functions: plot() and lines()

The simplified format of plot() and lines() is as follow.

plot(x, y, type = "l", lty = 1)
lines(x, y, type = "l", lty = 1)

  • x, y: coordinate vectors of points to join
  • type: character indicating the type of plotting. Allowed values are:
    • "p" for points
    • "l" for lines
    • "b" for both points and lines
    • "c" for empty points joined by lines
    • "o" for overplotted points and lines
    • "s" and "S" for stair steps
    • "n" does not produce any points or lines
  • lty: line types. Line types can either be specified as an integer (0=blank, 1=solid (default), 2=dashed, 3=dotted, 4=dotdash, 5=longdash, 6=twodash) or as one of the character strings "blank", "solid", "dashed", "dotted", "dotdash", "longdash", or "twodash", where "blank" uses ‘invisible lines' (i.e., does not draw them).


Create some data

# Create some variables
x <- 1:10
y1 <- x*x
y2  <- 2*y1

We'll plot a plot with two lines: lines(x, y1) and lines(x, y2).

Note that the function lines() can not produce a plot on its own. However, it can be used to add lines() on an existing graph. This means that, first you have to use the function plot() to create an empty graph and then use the function lines() to add lines.


Basic line plots

# Create a basic stair steps plot 
plot(x, y1, type = "S")
# Show both points and line
plot(x, y1, type = "b", pch = 19, 
     col = "red", xlab = "x", ylab = "y")


Plots with multiple lines

# Create a first line
plot(x, y1, type = "b", frame = FALSE, pch = 19, 
     col = "red", xlab = "x", ylab = "y")
# Add a second line
lines(x, y2, pch = 18, col = "blue", type = "b", lty = 2)
# Add a legend to the plot
legend("topleft", legend=c("Line 1", "Line 2"),
       col=c("red", "blue"), lty = 1:2, cex=0.8)



Source: STHDA, http://www.sthda.com/english/wiki/line-plots-r-base-graphs
Creative Commons License This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.

Last modified: Monday, January 9, 2023, 3:58 PM