我有一个变量data
,其结构如下:
week: int 1 1 2 2 3 3 4 4 5 5 ...
earn: int 2 3 2 7 8 9 2 6 4 2 ...
name: chr "C", "A", "C", "A" ...
每个名字(人)都有一周的收入。因此,从上面我们可以看出,C在第1周赚了2,而A在第1周赚了3,C在第2周赚了2,而A在周也赚了7。
我希望在折线图上绘制它。以下是我的尝试。
p <- plot.ly(data, x = data$week, name = "Week", type = "scatter", mode = "lines") %>%
add_trace(y = data$earn, name = "earn", mode = "lines+markers) %>%
add_trace(y = data$earn, name = "earn", mode = "markers")
p
然而,这给出了一行图表,其中第一周的标记具有(2,3),因为这是本周的收益。不过我想要两条线,因此可以清楚地看到这两个名字的收入差异。
答案 0 :(得分:1)
定义颜色会给你你想要的东西。
p <- plot_ly(data, x = ~week, y = ~ earn) %>%
add_lines(color = ~name) %>%
add_markers(color = ~name, showlegend = FALSE)
p
或者您也可以使用:
p <- plot_ly(data=data, x = ~week, y = ~ earn) %>%
add_traces(color = ~name, mode = "lines+markers")
p