2016-05-13 67 views
1

我正在一個閃亮的應用程序工作,我認爲這可能是一個不錯的主意,通過創建一個樣式表在我的ggvis主題的單獨R文件上的一種樣式表。然後,我想調用「造型 - 塊」每當我需要他們在我的主server.R腳本如何將代碼塊分配給ggvis中的對象?

所以這是一個樣本條形圖:

cars %>% 
    distinct(speed) %>% 
    filter(speed<10) %>% 
    ggvis(x=~speed, y=~dist) %>% 
    layer_bars(fill:="#73879C", stroke:="#73879C") 

對此我想鏈下面的代碼

add_axis("y", title = "", grid=FALSE, 
      properties= axis_props(
      labels = list(
       fill="#777" 
      ), 
      axis = list(stroke = "#fff") 
      )) 

我以爲我可以分配到add_axis對象,然後鏈的對象,但它不工作。這裏是我的意思是:

eliminateGrid <- function(x){add_axis("y", title = "", grid=FALSE, 
      properties= axis_props(
      labels = list(
       fill="#777" 
      ), 
      axis = list(stroke = "#fff") 
      ))} 


cars %>% 
     distinct(speed) %>% 
     filter(speed<10) %>% 
     ggvis(x=~speed, y=~dist) %>% 
     layer_bars(fill:="#73879C", stroke:="#73879C") %>% 
    eliminateGrid() 

我歡迎不但對因任何反饋爲什麼我的代碼不工作,也對我的做法是否讓任何意義可言。

回答

2

我們需要創建一個將傳遞一個函數vis對象add_axis()

eliminateGrid <- function(vis){ 
    add_axis(vis = vis, type = "y", title = "", grid = FALSE, 
      properties= axis_props(
      labels = list(
       fill="#777"), 
      axis = list(stroke = "#fff") 
      )) 
    }