格子中的多区域图表
multiarea chart in lattice
我正在将 lattice
推向极限。
考虑这个例子
tibble(time = c(ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03')),
variable = c('a','a','a','b','b','b', 'c','c','c'),
value = c(1,2,3,0,0,2,2,4,3)) %>%
ggplot(aes(x = time, y = value, fill = variable)) + geom_area()
使用 中的好解决方案在这里不起作用,可能是因为我们有多个区域。
我们还能用 lattice
做吗?
谢谢!
library(dplyr)
library(lubridate)
library(lattice)
library(latticeExtra)
df1 <- tibble(time = c(ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03')),
variable = c('a','a','a','b','b','b', 'c','c','c'),
value = c(1,2,3,0,0,2,2,4,3))
df2 <- df1 %>% group_by(time) %>% mutate(val=cumsum(value))
xyplot(val~time, df2, group=variable,
panel=function(x,y,...){
panel.xyarea(x,y,...)
panel.xyplot(x,y,...)},
alpha=c(0.9,0.6,0.3))
由 reprex package (v0.3.0)
于 2019-06-13 创建
我正在将 lattice
推向极限。
考虑这个例子
tibble(time = c(ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03')),
variable = c('a','a','a','b','b','b', 'c','c','c'),
value = c(1,2,3,0,0,2,2,4,3)) %>%
ggplot(aes(x = time, y = value, fill = variable)) + geom_area()
使用
我们还能用 lattice
做吗?
谢谢!
library(dplyr)
library(lubridate)
library(lattice)
library(latticeExtra)
df1 <- tibble(time = c(ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03'),
ymd('2019-01-01'),
ymd('2019-01-02'),
ymd('2019-01-03')),
variable = c('a','a','a','b','b','b', 'c','c','c'),
value = c(1,2,3,0,0,2,2,4,3))
df2 <- df1 %>% group_by(time) %>% mutate(val=cumsum(value))
xyplot(val~time, df2, group=variable,
panel=function(x,y,...){
panel.xyarea(x,y,...)
panel.xyplot(x,y,...)},
alpha=c(0.9,0.6,0.3))
由 reprex package (v0.3.0)
于 2019-06-13 创建