带有自定义线型的R条多线图

时间:2019-06-28 13:00:11

标签: r plotly

我可能有一个简单的R plotly问题,但是我花了大约一个小时阅读stackoverflow中的问题,但我确实找不到我需要的东西。我有一个数据框(我将共享一个屏幕截图),其中的不同列用于创建可绘制多条线的图表。 这是我用来创建情节的代码:

plot_ly(data = df_final, x=~TENOR, y=~RATE) %>% add_trace(type='scatter',mode='lines', color=~LINE_NAME, colors = ~LINE_COL) %>%
    layout(title=paste0("Market data"),
           xaxis=list(title='Term (years)'),
           yaxis=list(title='Yield'))

它的效果很棒,但是我想选择是否某些线必须是虚线,点或实线以及它们的宽度。 我需要/想要在数据框内指定此信息,然后选择包含此类信息的数据框列(即,请参阅所附数据框中的“ LINE_STYLE_FACTOR”列)。 我检查了Multiple line chart using plotly rPlotly r, line style by variable,但找不到所需的方法。 该解决方案必须使用绘图而不是其他制图解决方案。 谢谢enter image description here

1 个答案:

答案 0 :(得分:1)

至少对于线型(破折号与线号),您可以“线型”:

library(dplyr)
library(plotly)

df = data.frame(xVals = rep(1:10,2),
                yVals = c(1:10, 2:11),
                myColor = c(rep('Red', 10), rep('Blue', 10)),
                myType = c(rep('solid', 10), rep('dot', 10)),
                myName = c(rep('FirstName', 10), rep('SecondName', 10)))
plot_ly(df, 
        x = ~xVals,
        y = ~yVals,
        color = ~I(myColor),
        name = ~myName,
        type = 'scatter',
        mode = 'lines',
        linetype = ~I(myType)
)