Description Usage Arguments Details See Also Examples
Zoom in on plot regions using date ranges or date-time ranges
1 2 3 |
xlim |
Limits for the x axis, entered as character dates in "YYYY-MM-DD" format for date or "YYYY-MM-DD HH:MM:SS" for date-time. |
ylim |
Limits for the y axis, entered as values |
expand |
If |
From tidyquant The 'coord_' functions prevent loss of data during zooming, which is necessary when zooming in on plots that calculate 'stats' using data outside of the zoom range (e.g. when plotting moving averages with [geom_ma()]). Setting limits using 'scale_x_date' changes the underlying data which causes moving averages to fail.
'coord_x_date' is a wrapper for 'coord_cartesian' that enables quickly zooming in on plot regions using a date range.
'coord_x_datetime' is a wrapper for 'coord_cartesian' that enables quickly zooming in on plot regions using a date-time range.
[ggplot2::coord_cartesian()]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | # Load libraries
library(tidyquant)
# coord_x_date
AAPL <- tq_get("AAPL")
AAPL %>%
ggplot(aes(x = date, y = adjusted)) +
geom_line() + # Plot stock price
geom_ma(n = 50) + # Plot 50-day Moving Average
geom_ma(n = 200, color = "red") + # Plot 200-day Moving Average
coord_x_date(xlim = c(today() - weeks(12), today()),
ylim = c(100, 130)) # Zoom in
# coord_x_datetime
time_index <- seq(from = as.POSIXct("2012-05-15 07:00"),
to = as.POSIXct("2012-05-17 18:00"),
by = "hour")
set.seed(1)
value <- rnorm(n = length(time_index))
hourly_data <- tibble(time.index = time_index,
value = value)
hourly_data %>%
ggplot(aes(x = time.index, y = value)) +
geom_point() +
coord_x_datetime(xlim = c("2012-05-15 07:00:00", "2012-05-15 16:00:00"))
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.