Google Timeline Chart with R
A timeline is a chart that depicts how a set of resources are used over time. One popular type of timeline is the Gantt chart.
gvisTimeline( data, rowlabel = "", barlabel = "", start = "", end = "", options = list(), chartid )
data |
data.frame that contains the data to be visualised |
rowlabel |
a string that referes to the column name in
|
barlabel |
a string that referes to the column name in
|
start |
number, date or datetime for the start dates |
end |
number, date or datetime for the end dates |
options |
list of configuration options. The options are documented in detail by Google online: https://developers.google.com/chart/interactive/docs/gallery/timeline#Configuration_Options The parameters can be set via a named list. The parameters have to map those of the Google documentation.
For more details see the Google API documentation and the R examples below. |
chartid |
character. If missing (default) a random chart id will be
generated based on chart type and |
gvisTimeline returns list
of class
"gvis
" and "list
".
An object of class "gvis
" is a list containing at least the
following components:
type
Google visualisation type
chartid
character id of the chart object. Unique chart ids are required to place several charts on the same page.
html
a list with the building blocks for a page
header
a character string of a html page header:
<html>...<body>
,
chart
a named character vector of the chart's building blocks:
jsHeader
Opening <script>
tag and
reference to Google's JavaScript library.
jsData
JavaScript function defining the input
data
as a JSON object.
jsDrawChart
JavaScript function combing the data with the visualisation API and user options.
jsDisplayChart
JavaScript function calling the handler to display the chart.
jsFooter
End tag </script>
.
jsChart
Call of the jsDisplayChart
function.
divChart
<div>
container to embed the chart
into the page.
caption
character string of a standard caption, including data name and chart id.
footer
character string of a html page footer:
</body>...</html>
, including the used R and googleVis version
and link to Google's Terms of Use.
Markus Gesmann markus.gesmann@gmail.com
Google Chart Tools API: https://developers.google.com/chart/interactive/docs/gallery/timeline
dat <- data.frame(Term=c("1","2","3"), President=c("Whasington", "Adams", "Jefferson"), start=as.Date(x=c("1789-03-29", "1797-02-03", "1801-02-03")), end=as.Date(x=c("1797-02-03", "1801-02-03", "1809-02-03"))) tl <- gvisTimeline(data=dat[,-1], rowlabel="President", start="start", end="end") plot(tl) tl <- gvisTimeline(data=dat, barlabel="President", start="start", end="end") plot(tl) tl <- gvisTimeline(data=dat, rowlabel="President", start="start", end="end", options=list(timeline="{showRowLabels:false}")) plot(tl) dat <- data.frame(Position=c(rep("President", 3), rep("Vice", 3)), Name=c("Washington", "Adams", "Jefferson", "Adams", "Jefferson", "Burr"), start=as.Date(x=rep(c("1789-03-29", "1797-02-03", "1801-02-03"),2)), end=as.Date(x=rep(c("1797-02-03", "1801-02-03", "1809-02-03"),2))) tl <- gvisTimeline(data=dat, rowlabel="Name",barlabel="Position", start="start", end="end", options=list(timeline="{showRowLabels:true}")) plot(tl) tl <- gvisTimeline(data=dat, rowlabel="Name",barlabel="Position", start="start", end="end", options=list(timeline="{groupByRowLabel:false}", backgroundColor='#ffd', height=350, colors="['#cbb69d', '#603913', '#c69c6e']")) plot(tl) # Datetime example dat <- data.frame(Room=c("Room 1","Room 2","Room 3"), Language=c("English", "German", "French"), start=as.POSIXct(c("2014-03-14 14:00", "2014-03-14 15:00", "2014-03-14 14:30")), end=as.POSIXct(c("2014-03-14 15:00", "2014-03-14 16:00", "2014-03-14 15:30"))) tl <- gvisTimeline(data=dat, rowlabel="Language", start="start", end="end") plot(tl) ## Not run: require(timeline) data(ww2) timeline(ww2, ww2.events, event.spots=2, event.label='', event.above=FALSE) ww2$Person <- gsub("\\n" ," ", ww2$Person) plot(gvisTimeline(ww2, barlabel="Person", rowlabel="Group", start="StartDate", end="EndDate", options=list(width=600, height=350)) ) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.