在 Y 轴上绘制 2 个变量,在 R 中使用 ggvis
plot 2 variables on Y axis, using ggvis in R
我有一个看起来像这样的数据集
"YEAR","A","B"
2001,100,177
2002,154,419
2003,334,190
2012,301,90
..还有更多行。
"YEAR" 列范围从 2001 年到 2013 年。
我在 data.table "DT"
中加载了数据集
我想绘制 X 轴为 YEAR 的图表,Y 轴为 A 和 B 的折线图。
换句话说,我必须将这两个图合二为一。
DT %>% ggvis(~YEAR, ~A) %>% layer_lines()
DT %>% ggvis(~YEAR, ~B) %>% layer_lines()
我知道用 ggplot2 做的方法,但找不到 ggvis 的方法。
即使我能在闪亮的情况下做到这一点也很棒。
非常感谢您的帮助。
试试这个:
DT %>% ggvis(~YEAR, ~A) %>% layer_lines()%>%layer_lines(x=~YEAR, y=~B)
你可以这样做:
library(ggvis)
DT %>% ggvis(x= ~YEAR) %>%
layer_lines(y= ~A, stroke:='blue') %>%
layer_lines(y= ~B, stroke:='orange')
我假设您还需要为每一行使用不同的颜色以便能够区分组,因此我添加了 stroke
参数。
输出:
如果您先融化 data.frame 然后使用描边参数进行绘图,这可能会更好,这也会 return 一个图例。像这样:
library(reshape2)
DT2 <- melt(DT, 'YEAR', c('A','B'))
DT2 %>% ggvis(~YEAR, ~value, stroke=~variable) %>% layer_lines()
我有一个看起来像这样的数据集
"YEAR","A","B"
2001,100,177
2002,154,419
2003,334,190
2012,301,90
..还有更多行。
"YEAR" 列范围从 2001 年到 2013 年。 我在 data.table "DT"
中加载了数据集我想绘制 X 轴为 YEAR 的图表,Y 轴为 A 和 B 的折线图。
换句话说,我必须将这两个图合二为一。
DT %>% ggvis(~YEAR, ~A) %>% layer_lines()
DT %>% ggvis(~YEAR, ~B) %>% layer_lines()
我知道用 ggplot2 做的方法,但找不到 ggvis 的方法。 即使我能在闪亮的情况下做到这一点也很棒。 非常感谢您的帮助。
试试这个:
DT %>% ggvis(~YEAR, ~A) %>% layer_lines()%>%layer_lines(x=~YEAR, y=~B)
你可以这样做:
library(ggvis)
DT %>% ggvis(x= ~YEAR) %>%
layer_lines(y= ~A, stroke:='blue') %>%
layer_lines(y= ~B, stroke:='orange')
我假设您还需要为每一行使用不同的颜色以便能够区分组,因此我添加了 stroke
参数。
输出:
如果您先融化 data.frame 然后使用描边参数进行绘图,这可能会更好,这也会 return 一个图例。像这样:
library(reshape2)
DT2 <- melt(DT, 'YEAR', c('A','B'))
DT2 %>% ggvis(~YEAR, ~value, stroke=~variable) %>% layer_lines()