2016-12-20 24 views
5

Theo lôgic cho Python, chúng tôi có ví dụ đa trục đẹp này: enter image description here đây là mã số link.Biểu đồ nhiều trục y với Nội dung trong R

Tôi cố gắng để làm điều tương tự với Plotly trong R sử dụng mã này:

library(plotly) 

x <- 1:4 
y1 <- c(1,2,3,4) 
y2 <- c(4,3,2,1) 
y3 <- c(1,4,1,4) 
y4 <- c(4,1,4,1) 

test <- data.frame(x, y1, y2, y3, y4) 

plot_ly(data = test, x = ~x, y = ~y1 
     ,type = "scatter", mode = "lines", width = 800, color = I("red") 
     ,name = "name01") %>% 
    add_trace(x = ~x, y = ~y2, yaxis = "y2", color = I("blue"), name = "name02") %>% 
    add_trace(x = ~x, y = ~y3, yaxis = "y3", color = I("purple"), name = "name03") %>% 
    add_trace(x = ~x, y = ~y4, yaxis = "y4", color = I("green"), name = "name04") %>% 
    layout(
    yaxis = list(
     showline = FALSE, side = "left" 
     ,title = "Label 1" 
     ,color = "red" 
    ) 
    ,yaxis2 = list(
     showline = FALSE 
     ,overlaying = "y" 
     ,title = "Label 2", anchor = "free" 
     ,color = "blue" 
    ) 
    ,yaxis3 = list(
     showline = FALSE, side = "right", overlaying = "y" 
     ,title = "Label 3" 
     ,color = "purple" 
    ) 
    ,yaxis4 = list(
     showline = FALSE, side = "right", overlaying = "y", position = 1 
     ,title = "Label 4", anchor = "free" 
     ,color = "green" 
    ) 
    ,xaxis = list(
     showline = FALSE, zeroline = FALSE, dtick = 1, title = "" 
    ) 
    ,showlegend = FALSE 
    ,margin = list(
     pad = 30, b = 90, l = 150, r = 90 
    ) 
    ,legend = list(orientation = "h") 
) 

Nhưng tôi có được các nhãn chồng chéo:

enter image description here

Làm thế nào tôi có thể sửa chữa nó để có được một tổ chức phi biểu đồ chồng chéo?

Trả lời

3

Thử điều chỉnh phần đệm (pad) giá trị cho margin đối số của layout().

nhất tôi tìm thấy cho các thông số khác của bạn là với pad = 49

enter image description here

Các vấn đề liên quan