使用amXYChart()函数实现同一图形的多条线。

问题描述 投票:0回答:1

我第一次尝试使用amXYChart()函数,我想在同一张图上表示两条线,但我无法做到。

例如,对于该数据集,我可以用下面的代码表示一条线。我可以用下面的代码来表示一条线。

x <- data.frame("value" = 1:5, "cats" = c(10,20,30,40,50), "dogs" = c(15,25,35,36,48))
amXYChart(x="value", y="dogs", dataProvider=x, keepNA = TRUE) %>%
  addGraph(xField = "value", yField = "dogs")

然而,当我试图表示两条线时,我的绘图窗口是空的(只显示x轴)。

x <- data.frame("value" = 1:5, "cats" = c(10,20,30,40,50), "dogs" = c(15,25,35,36,48))
amXYChart(x="value", y=c("cats","dogs"), dataProvider=x, keepNA = TRUE) %>%
  addGraph(xField = "value", yField = c("cats","dogs"))

此外,我试图使用这个包,因为互动性,但当我把我的绘图器(第一个)什么都没有出现。在下面的例子中,它可以完美地工作。

library(lubridate)
data("data_stock_2")
amTimeSeries(data_stock_2, 'date', c('ts1', 'ts2'))

交互性只适用于时间序列数据吗?

非常感谢您的帮助!

r amcharts
1个回答
1
投票

我建议使用 amSerialChart 如下:

amSerialChart(dataProvider=dts, keepNA = TRUE, categoryField="value") %>%
  addGraph(valueField = "cats") %>%
  addGraph(valueField = "dogs") %>%
  setChartCursor()

vars <- c("cats", "dogs")
p <- amSerialChart(dataProvider=dts, keepNA = TRUE, categoryField="value") 
for (vark in vars) {
  p <- p %>% addGraph(valueField = vark)
}
p %>% setChartCursor()

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.