2015-07-10 92 views
2

我在R中使用「dygraphs」包來繪製條形圖併爲所有酒吧分配綠色。當我在R中顯示圖表時,事情是完全正常的,但是當我嘗試在Web瀏覽器中顯示它們時,所有的條形圖都會變黑。下面是代碼(包括JavaScript的一個片段,因爲谷歌說,我可以用它來繪製使用dygraph條形圖):R中的Dygraphs在瀏覽器中查看時不顯示顏色

library(xts) 
library(dygraphs) 
library(lubridate) 
library(dplyr) 

df <- data.frame(date = as.Date(13800:13810, origin = "1970-01-01"), 
        n = 1:11) 

graph_data <- xts(x = 1:10, order.by = as.Date(13801:13810, origin = "1970-01-01")) 

dygraph(graph_data) %>% 
    dyOptions(useDataTimezone = TRUE, 
       colors = c("008000"), 
       plotter = 
        "function barChartPlotter(e) { 
      var ctx = e.drawingContext; 
      var points = e.points; 
      var y_bottom = e.dygraph.toDomYCoord(0); 

      var bar_width = 1/2 * (points[1].canvasx - points[0].canvasx); 
      ctx.fillStyle = e.color; 

      for (var i = 0; i < points.length; i++) { 
      var p = points[i]; 
      var center_x = p.canvasx; // center of the bar 

      ctx.fillRect(center_x - bar_width/2, p.canvasy, 
      bar_width, y_bottom - p.canvasy); 
      ctx.strokeRect(center_x - bar_width/2, p.canvasy, 
      bar_width, y_bottom - p.canvasy); 
      } 
      }") 

我可能必須使用dygraphs畫吧,因爲它是快,吸引了成千上萬的酒吧...

任何幫助表示讚賞!

+0

你如何在瀏覽器中顯示圖表? – Shiva

+0

通常兩種情況。如果我在R中使用Shiny而不是RStudio,則輸出爲HTML文件,並在瀏覽器中顯示。在這種情況下,dygraphs的顏色是錯誤的,但由RStudio創建的窗口在顏色方面完全沒問題。另一種情況是,當我在RStudio中繪製dygraph時,在「查看器」中總是有一個選項,您可以通過單擊第二個最右邊的按鈕在瀏覽器中顯示輸出。我不確定如何使用Javascript在瀏覽器中顯示dygraph,但我認爲有一種方法可以將圖形放入HTML文件中。 –

回答

1

您只是在設置顏色時缺少'#'。檢查 colors = c("008000")一行。它應該是colors = c("#008000")

+0

感謝您的建議!我剛剛嘗試過,但問題仍然存在。可能在其他地方也(也)破碎... –

+0

這是在我的機器完美的工作!我正在使用上面公佈的代碼和我建議的更改(只是插入#)。 – Shiva