## 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)
## 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)
Run the code above in your browser using DataLab