hc_vistime: Create a Timeline rendered by Highcharts.js

View source: R/hc_vistime.R

hc_vistimeR Documentation

Create a Timeline rendered by Highcharts.js

Description

Provide a data frame with event data to create a visual and interactive timeline plot rendered by Highcharts. Simplest drawable dataframe can have columns 'event' and 'start'. This feature is facilitated by the 'highcharter' package, so, this package needs to be installed before attempting to produce any 'hc_vistime()' output.

Usage

hc_vistime(
  data,
  col.event = "event",
  col.start = "start",
  col.end = "end",
  col.group = "group",
  col.color = "color",
  col.tooltip = "tooltip",
  optimize_y = TRUE,
  title = NULL,
  show_labels = TRUE,
  ...
)

Arguments

data

data.frame that contains the data to be visualized

col.event

(optional, character) the column name in data that contains event names. Default: event.

col.start

(optional, character) the column name in data that contains start dates. Default: start.

col.end

(optional, character) the column name in data that contains end dates. Default: end.

col.group

(optional, character) the column name in data to be used for grouping. Default: group.

col.color

(optional, character) the column name in data that contains colors for events. Default: color, if not present, colors are chosen via RColorBrewer.

col.tooltip

(optional, character) the column name in data that contains the mouseover tooltips for the events. Default: tooltip, if not present, then tooltips are built from event name and date.

optimize_y

(optional, logical) distribute events on y-axis by smart heuristic (default), otherwise use order of input data.

title

(optional, character) the title to be shown on top of the timeline. Default: NULL.

show_labels

(optional, boolean) choose whether or not event labels shall be visible. Default: TRUE.

...

for deprecated arguments up to vistime 1.1.0 (like events, colors, ...)

Value

hc_vistime returns an object of class highchart and htmlwiget

See Also

Functions ?vistime and ?gg_vistime for different charting engines (Plotly and ggplot2).

Examples

# presidents and vice presidents
pres <- data.frame(
  Position = rep(c("President", "Vice"), each = 3),
  Name = c("Washington", rep(c("Adams", "Jefferson"), 2), "Burr"),
  start = c("1789-03-29", "1797-02-03", "1801-02-03"),
  end = c("1797-02-03", "1801-02-03", "1809-02-03"),
  color = c("#cbb69d", "#603913", "#c69c6e")
)

hc_vistime(pres, col.event = "Position", col.group = "Name", title = "Presidents of the USA")
#'
## Not run: 
# ------ It is possible to change all attributes of the timeline using highcharter::hc_*():
data <- read.csv(text="event,start,end
                       Phase 1,2020-12-15,2020-12-24
                       Phase 2,2020-12-23,2020-12-29
                       Phase 3,2020-12-28,2021-01-06
                       Phase 4,2021-01-06,2021-02-02")

library(highcharter)
p <- hc_vistime(data, optimize_y = T, col.group = "event",
                title = "Highcharts customization example")
p %>% hc_title(style = list(fontSize=30)) %>%
      hc_yAxis(labels = list(style = list(fontSize=30, color="violet"))) %>%
      hc_xAxis(labels = list(style = list(fontSize=30, color="red"), rotation=30)) %>%
      hc_chart(backgroundColor = "lightgreen")

## End(Not run)

vistime documentation built on Nov. 2, 2023, 5:23 p.m.