2015-10-27 53 views
0

目標:保存ggvis HTML到文件

我希望能夠創建靜態ggvis情節和傳遞一個參數在HTML文件保存的目錄路徑。

模擬數據:

require(ggvis) 

# Create mock data to work with 
dfa <- data.frame(
date_a = seq(from= as.Date("2015-06-10"), 
    to= as.Date("2015-07-01"), by= 1), 
val_a = c(2585.150, 2482.200, 3780.186, 3619.601, 
    0.000, 0.000, 3509.734, 3020.405, 
    3271.897, 3019.003, 3172.084, 0.000, 
    0.000, 3319.927, 2673.428, 3331.382, 
    3886.957, 2859.887, 0.000, 0.000, 
    2781.443, 2847.377)) 

例情節:

這裏是一個靜態ggvis圖的一個例子。

# Create working static ggvis plot 
dfa %>% 
    ggvis(x= ~date_a , y= ~val_a, stroke := "black", opacity := 0.5) %>% 
    scale_datetime("x", nice = "month", domain = c(as.Date("2015-06-10"), 
    as.Date("2015-07-15"))) %>% 
    layer_lines() %>% layer_points(fill := "black") 

運行此操作時,默認情況下該html文件被寫入"file:///C:/Users/.../AppData/Local/Temp/RtmpyuMDDO/viewhtml1bf039815bb2/index.html"。相反,我希望能夠通過一個所需的路徑:"file:///C:/my/desired/path/to/plot/index.html"作爲參數,並在那裏保存html文件。

研究:

這裏是我已閱讀,但無法讓工作相關問題的:

Documentation

SO Discussion on saving html

對於以前的SO討論,自從這篇較舊的文章以來,首先有了進一步的發展,其次,我寧願只傳遞一個目標路徑並且擁有html寫入指定的路徑。

+1

_「dest \t已過時(此操作不再有效)。」_ – hrbrmstr

回答

1

將這個成output.Rmd

```{r, echo=FALSE} 
library(ggvis) 
dfa <- data.frame(
date_a = seq(from= as.Date("2015-06-10"), 
    to= as.Date("2015-07-01"), by= 1), 
val_a = c(2585.150, 2482.200, 3780.186, 3619.601, 
    0.000, 0.000, 3509.734, 3020.405, 
    3271.897, 3019.003, 3172.084, 0.000, 
    0.000, 3319.927, 2673.428, 3331.382, 
    3886.957, 2859.887, 0.000, 0.000, 
    2781.443, 2847.377)) 

dfa %>% 
    ggvis(x= ~date_a , y= ~val_a, stroke := "black", opacity := 0.5) %>% 
    scale_datetime("x", nice = "month", domain = c(as.Date("2015-06-10"), 
    as.Date("2015-07-15"))) %>% 
    layer_lines() %>% layer_points(fill := "black") %>% 
    knit_print.ggvis(inline=TRUE) 
``` 

在的R控制檯(在正確的目錄),運行:

rmarkdown::render("output.Rmd") 

而且output.html看起來像:

enter image description here

併成爲一個獨立的文件。

如果你工作一點,你可以使它成爲你所需要的功能。

+0

感謝您的回覆。雖然在Rmarkdown文檔中包裝它,但似乎應該有一種方法來指定ggvis輸出HTML的目的地。如果沒有其他替代方案出現,我會接受這個解決方案。再次感謝您的建議。 – Stan