To plot multiple dygraphs in the same RStudio window you must first create a list of dygraphs objects, and then render the dygraphs list using package htmltools. Yihui Xie from RStudio provided the answer here:
Yihui Xie answer (but without grouping).
Here is working R
code that produces grouped dygraphs candlestick plots:
# load packages
library(quantmod)
library(dygraphs)
library(htmltools)
# download time series into an environment
sym_bols <- c("VTI", "EEM")
data_env <- new.env()
quantmod::getSymbols(sym_bols, from="2017-01-01", env=data_env)
# create a list of dygraphs objects in a loop
dy_graph <- eapply(data_env, function(x_ts) {
dygraphs::dygraph(x_ts[, 1:4], group="etfs",
main=paste("Plot of:", substring(colnames(x_ts)[1], 1, 3)),
width=600, height=400) %>% dygraphs::dyCandlestick()
}) # end eapply
# render the dygraphs objects using htmltools
htmltools::browsable(htmltools::tagList(dy_graph))
# perform same plotting as above using pipes syntax
# create a list of dygraphs objects in a loop
eapply(data_env, function(x_ts) {
dygraphs::dygraph(x_ts[, 1:4], group="etfs",
main=paste("Plot of:", substring(colnames(x_ts)[1], 1, 3)),
width=600, height=400) %>% dygraphs::dyCandlestick()
}) %>% # end eapply
# render the dygraphs objects using htmltools
htmltools::tagList() %>% htmltools::browsable()
The above R
code produces the following grouped dygraphs candlestick plots:
