2016-07-25 90 views
0

我想要做的多地塊以2軸每個情節是這樣plotly多個繪圖方面

library(plotly) 
ay <- list(
    tickfont = list(color = "green"), 
    overlaying = "y", 
    side = "right", title = "y2 axis title" 
) 


par(mfrow=c(2,1)) 
ax <-list(title = "x axis title") 
ay1 <-list(title = "y1 axds title") 
plot_ly(x = 1:3, y = 10*(1:3), name = "slope of 10") %>% 
    add_trace(x = 2:4, y = 1:3, name = "slope of 1", yaxis = "y2") %>% 
    layout(title = "Double Y Axis", yaxis2 = ay, xaxis = ax, yaxis = ay1) 


ax <-list(title = "x axis title") 
ay1 <-list(title = "y1 axds title") 
plot_ly(x = 1:3, y = 10*(1:3), name = "slope of 10") %>% 
    add_trace(x = 2:4, y = 1:3, name = "slope of 1", yaxis = "y2") %>% 
    layout(title = "Double Y Axis", yaxis2 = ay, xaxis = ax, yaxis = ay1) 

但是當你運行代碼,你仍然只看到一個情節。可以積極做多極?它可以做2軸切面嗎?

+0

你想要繪製在同一頁上這2個(同)地塊? – Sumedh

+0

是的。我希望他們能夠一個在另一個之上。但理想情況下,我希望能夠積極使用facet_wrap。那可能嗎? – user3022875

回答

0

您正在尋找subplot。檢查此page更多

library(plotly) 
ay <- list(
    tickfont = list(color = "green"), 
    overlaying = "y", 
    side = "right", title = "y2 axis title" 
) 

ax <-list(title = "x axis title") 
ay1 <-list(title = "y1 axds title") 

subplot(
     plot_ly(x = 1:3, y = 10*(1:3), name = "slope of 10") %>% 
      add_trace(x = 2:4, y = 1:3, name = "slope of 1", yaxis = "y2") %>% 
      layout(title = "Double Y Axis", yaxis2 = ay, xaxis = ax, yaxis = ay1), 
     plot_ly(x = 1:3, y = 10*(1:3), name = "slope of 10") %>% 
      add_trace(x = 2:4, y = 1:3, name = "slope of 1", yaxis = "y2") %>% 
      layout(title = "Double Y Axis", yaxis2 = ay, xaxis = ax, yaxis = ay1), nrows = 2) 

輸出

enter image description here

+0

當我運行上面的代碼情節不會出現。我也在最後一行「ay1」後刪除了「)」 – user3022875

+0

當我運行完全相同的代碼時,我發佈了輸出。我正在使用'plotly_3.6.0'和'ggplot2_2.1.0' – Sumedh

+0

試試這個:將第一個'plot_ly'圖分配給'a',第二個分配給'b'。然後運行'subplot(a,b,nrow = 2)'。情節現在出現嗎? – Sumedh