Description Usage Arguments Details Value Warnings Author(s) References See Also Examples
The gvisAnnotatedTimeLine function reads a data.frame and creates text output referring to the Google Visualisation API, which can be included into a web page, or as a stand-alone page.
An annotated time line is an interactive time series line chart with optional annotations. The chart is rendered within the browser using Flash.
1 2 3 4 | gvisAnnotatedTimeLine(data, datevar = "", numvar="", idvar = "",
titlevar="", annotationvar="",
date.format = "%Y/%m/%d",
options = list(), chartid)
|
data |
a |
datevar |
column name of |
numvar |
column name of |
idvar |
column name of |
titlevar |
column name of |
annotationvar |
column name of |
date.format |
if |
options |
list of configuration options for Google Annotated Time Line.
Further possible components are, taken from https://google-developers.appspot.com/chart/interactive/docs/gallery/annotatedtimeline#Configuration_Options:
|
chartid |
character. If missing (default) a random chart id will be generated based on
chart type and |
You can display one or more lines on your chart. Each row represents an X position on the chart - that is, a specific time; each line is described by a set of one to three columns.
The first column is of type date or datetime, and specifies the X value of the point on the chart. If this column is of type date (and not datetime) then the smallest time resolution on the X axis will be one day.
Each data line is then described by a set of one to three additional columns as described here:
Y value - [Required, Number] The first column in each set describes the value of the line at the corresponding time from the first column. The column label is displayed on the chart as the title of that line.
Annotation title - [Optional, String] If a string column follows the value column, and the displayAnnotations option is true, this column holds a short title describing this point. For instance, if this line represents temperature in Brazil, and this point is a very high number, the title could be "Hottest day on record".
Annotation text - [Optional string] If a second string column exists for this series, the cell value will be used as additional descriptive text for this point. You must set the option displayAnnotations to true to use this column. You can use HTML tags, if you set allowHtml to true; there is essentially no size limit, but note that excessively long entries might overflow the display section. You are not required to have this column even if you have an annotation title column for this point. The column label is not used by the chart. For example, if this were the hottest day on record point, you might say something like "Next closest day was 10 degrees cooler!".
gvisAnnotatedTimeLine
returns list of class
"gvis
"
and "list
".
An object of class "gvis
" is a list containing at least the
following components:
|
Google visualisation type, here 'AnnotatedTimeLine' |
|
character id of the chart object. Unique chart ids are required to place several charts on the same page. |
|
a list with the building blocks for a page
|
Because of Flash security settings the chart might not work correctly when accessed from a file location in the browser (e.g., file:///c:/webhost/myhost/myviz.html) rather than from a web server URL (e.g. http://www.myhost.com/myviz.html). See the googleVis package vignette and the Macromedia web site (http://www.macromedia.com/support/documentation/en/flashplayer/help/) for more details.
Markus Gesmann markus.gesmann@gmail.com,
Diego de Castillo decastillo@gmail.com
Google Annotated Time Line API: https://google-developers.appspot.com/chart/interactive/docs/gallery/annotatedtimeline.html
Follow the link for Google's data policy.
See also print.gvis
, plot.gvis
for
printing and plotting methods. Further see reshape
for
reshaping data, e.g. from a wide format into a long format.
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | ## Please note that by default the googleVis plot command
## will open a browser window and requires Flash and Internet
## connection to display the visualisation.
data(Stock)
Stock
A1 <- gvisAnnotatedTimeLine(Stock, datevar="Date",
numvar="Value", idvar="Device",
titlevar="Title", annotationvar="Annotation",
options=list(displayAnnotations=TRUE,
legendPosition='newRow',
width=600, height=350)
)
plot(A1)
## Two Y-axis
A2 <- gvisAnnotatedTimeLine(Stock, datevar="Date",
numvar="Value", idvar="Device",
titlevar="Title", annotationvar="Annotation",
options=list(displayAnnotations=TRUE,
width=600, height=350, scaleColumns='[0,1]',
scaleType='allmaximized')
)
plot(A2)
## Zoom into the time window, no Y-axis ticks
A3 <- gvisAnnotatedTimeLine(Stock, datevar="Date",
numvar="Value", idvar="Device",
titlevar="Title", annotationvar="Annotation",
options=list(
width=600, height=350,
zoomStartTime=as.Date("2008-01-04"),
zoomEndTime=as.Date("2008-01-05"))
)
plot(A3)
## Colouring the area below the lines to create an area chart
A4 <- gvisAnnotatedTimeLine(Stock, datevar="Date",
numvar="Value", idvar="Device",
titlevar="Title", annotationvar="Annotation",
options=list(
width=600, height=350,
fill=10, displayExactValues=TRUE,
colors="['#0000ff','#00ff00']")
)
plot(A4)
## Data with POSIXct datetime variable
A5 <- gvisAnnotatedTimeLine(Andrew, datevar="Date/Time UTC",
numvar="Pressure_mb",
options=list(scaleType='maximized')
)
plot(A5)
## Not run:
## Plot Apple's monthly stock prices since 1984
## Get current date
d <- Sys.time()
current.year <- format(d, "%Y")
current.month <- format(d, "%m")
current.day <- format(d, "%d")
## Yahoo finance sets January to 00 hence:
month <- as.numeric(current.month) - 1
month <- ifelse(month < 10, paste("0",month, sep=""), m)
## Get weekly stock prices from Apple Inc.
tckr <- 'AAPL'
yahoo <- 'http://ichart.finance.yahoo.com/table.csv'
fn <- sprintf('%s?s=%s&a=08&b=7&c=1984&d=%s&e=%s&f=%s&g=w&ignore=.csv',
yahoo, tckr, month, current.day, current.year)
## Get data from Yahoo! Finance
data <- read.csv(fn, colClasses=c("Date", rep("numeric",6)))
AAPL <- reshape(data[,c("Date", "Close", "Volume")], idvar="Date",
times=c("Close", "Volume"),
timevar="Type",
varying=list(c("Close", "Volume")),
v.names="Value",
direction="long")
## Calculate previous two years for zoom start time
lyd <- as.POSIXlt(as.Date(d))
lyd$year <- lyd$year-2
lyd <- as.Date(lyd)
aapl <- gvisAnnotatedTimeLine(AAPL, datevar="Date",
numvar="Value", idvar="Type",
options=list(
colors="['blue', 'lightblue']",
zoomStartTime=lyd,
zoomEndTime=as.Date(d),
legendPosition='newRow',
width=600, height=400, scaleColumns='[0,1]',
scaleType='allmaximized')
)
plot(aapl)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.