2016-08-02 125 views
3

我想繪製一個條形圖和R中的折線圖。小區條形圖和折線圖

我第一次嘗試是

p <- plot_ly(
    x = c(1,2,3,4,5), 
    y = c(1,2,1.5,3,2), 
    type='scatter', 
    mode='lines', 
    line = list(color = 'black') 
) 
add_trace(
    p, 
    x = c(1,2,3,4,5), 
    y = c(0.5,0.7,0.6,0.9,0.8), 
    type='bar', 
    marker = list(color = 'red') 
) 

結果是正確的,但我得到以下警告:

警告消息:下面的屬性不存在:「模式」,「行「

我想引起add_trace()酒吧情節不能處理linemode PARAMET呃來自plot_ly()函數。所以我改變了順序:

p <- plot_ly(
    x = c(1,2,3,4,5), 
    y = c(0.5,0.7,0.6,0.9,0.8), 
    type='bar', 
    marker = list(color = 'red') 
) 
add_trace(
    p, 
    x = c(1,2,3,4,5), 
    y = c(1,2,1.5,3,2), 
    type='scatter', 
    mode='lines', 
    line = list(color = 'black') 
) 

這次我收到以下消息,紅色標記顯示在黑色折線圖上。

的標記對象已指定,但標誌是不是在模式 添加標記的模式...

我怎樣才能解決這個問題? (我使用R包plotly 4.1.0

+0

首先,'plotly V4.1.0 '不存在,CRAN上的最新版本是'v3.6.0'。其次,我跑了上面的第一個代碼塊,並沒有得到任何錯誤。嘗試更新情節? –

+1

'plotly 4.1.0' exists [indeed](https://github.com/ropensci/plotly/blob/master/NEWS.md)。它是[GitHub](https://github.com/ropensci/plotly)上的最新版本。這似乎是這個新版本的問題。但在GitHub上打開一個問題之前,我想問問,如果我做錯了什麼。 – elcombato

+0

我站好了;我只看了一下Github上的發佈標籤。由於它在3.6.0上對我有效,它可能是一個小錯誤,然後 –

回答

3

我plotly 4.0.1運行,但是如果我添加mode='lines+markers',而不是僅僅mode='lines'錯誤消息消失我。

--edit加滿代碼 -

對於懶惰(像我一樣),下面是在我結束工作的全碼:

p <- plot_ly(x = c(1,2,3,4,5), 
      y = c(0.5,0.7,0.6,0.9,0.8), 
      type='bar', 
      marker = list(color = 'red', opacity=0) 
    ) 

add_trace(p, 
      x = c(1,2,3,4,5), 
      y = c(1,2,1.5,3,2), 
      type='scatter', 
      mode='lines+markers', 
      line = list(color = 'black') 
    ) 
+0

這是正確的,但我不想在線圖中標記。 – elcombato

+0

您可以指定不透明度在第一個軌跡'marker = list(color ='red',opacity = 0)的標記中設置爲零' –