我可以回答您的第一个问题:如何使用不同的数据在第一张图的顶部以不同的颜色绘制另一条线。我还没有找到 ggvis 中错误栏的解决方案。
您可以在定义各个层时使用“data =”参数,如本页最底部的示例所示:
http://ggvis.rstudio.com/data-hierarchy.html
定义一些数据集:
bend <- data.frame("Date" = seq(as.Date("2014-01-01"), as.Date("2014-01-31"), by = 1),
"PM25" = c(12.2, 3.5, 3.6, 12.5, 10.8, 9.0, 2.4, 1.5, 1.7, 1.7,
1.5, 1.4, 5.1, 6.1, 10.2, 10.9, 10.4, 10.4, 11.4, 12.7,
17.9, 5.9, 4.2, 11.8, 16.8, 5.8, 7.0, 9.6, 1.5, 5.4, 5.7))
albany <- data.frame("Date" = seq(as.Date("2014-01-01"), as.Date("2014-01-31"), by = 1),
"PM25" = c(6.5, 5.7, 6.3, 11.4, 3.8, 5.9, 6.5, 3.1, 7.7, 6.7,
5.5, 7.2, 4.3, 11.2, 10.4, 10.0, 7.7, 13.2, 7.7, 19.9,
12.6, 8.6, 5.7, 8.4, 6.9, 15.7, 15.2, 16.2, 13.1, 11.3, 0.7))
制作图表:
ggvis(data = NULL, x = ~Date, y = ~PM25) %>%
layer_points(fill := "red", data = bend) %>%
layer_paths(stroke := "red", data = bend) %>%
layer_points(fill := "blue", data = albany) %>%
layer_paths(stroke := "blue", data = albany) %>%
add_axis("x", format = "%Y-%b-%d",
tick_padding = 30, title_offset = 80,
properties = axis_props(
labels = list(angle = 270)))
不幸的是,data= 参数当前无法与 layer_lines 一起使用(请参阅此处:https://github.com/rstudio/ggvis/issues/440),但它正在与 layer_paths 一起使用。