How to save interactive charts from dygraph

2020-02-23 05:11发布

问题:

I produce interactive graphs using dygraph. I can view them in the "Viewer" window in R studio and in a browser.

What is the most convenient way to save these plots (es html?)? Can I mail them?

I run R studio 0.98.507 and sessionInfo() gives:

R version 3.1.0 (2014-04-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=German_Austria.1252  LC_CTYPE=German_Austria.1252    LC_MONETARY=German_Austria.1252 LC_NUMERIC=C                   
[5] LC_TIME=German_Austria.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] PerformanceAnalytics_1.1.0 xts_0.9-7                  zoo_1.7-11                 MASS_7.3-33               
[5] cluster_1.15.2             RODBC_1.3-10              

loaded via a namespace (and not attached):
[1] grid_3.1.0      lattice_0.20-29 tools_3.1.0  

回答1:

htmlwidgets have a saveWidget function which lets you save the full visualization out as a standalone (or composite) HTML file.

As Miha said, you can knit them as well.

If you don't need the interactivity (which is unlikely in the case of dygraphs) you can also use SVG Crowbar 2 to save out the SVG from the displayed visualization in a browser.

With regard to the "knitting", here's a sample R Markdown document with a dygraph in it:

---
title: "dygraphs knit example"
author: "Bob Rudis (@hrbrmstr)"
date: "March 17, 2015"
output: html_document
---

```{r}
library(dygraphs)
dygraph(nhtemp, main = "New Haven Temperatures") %>% 
  dyRangeSelector(dateWindow = c("1920-01-01", "1960-01-01"))
```

Knit that in RStudio and it'll generate a self-contained HTML with the visualization.



回答2:

From the dygraphs for R website:

You can use dygraphs within R Markdown documents just like any other R plotting function. However, rather than a PNG file being included in your document, the JavaScript required to render your dygraph is included.

It means that (from within Rstudio), using knitr and Rmarkdown packages, you can knit a standalone html document that includes dygraphs. You can email the html file if you like.



标签: r dygraphs