R ggplot,绘制多个区域,每个区域具有多个填充颜色

R ggplot,绘制多个区域,每个区域具有多个填充颜色,r,ggplot2,R,Ggplot2,我想可视化有效数据的历史 mkts = c('GOLD','SILVER') dt = CJ(date = seq(as.Date('2000-01-01'), as.Date('2020-01-01'), by = 1), market = mkts) dt[market == 'GOLD', hasValidData := (date > '2005-01-01') & (date < '2018-01-01')] dt[market == 'SILVER', hasVa

我想可视化有效数据的历史

mkts = c('GOLD','SILVER')
dt = CJ(date = seq(as.Date('2000-01-01'), as.Date('2020-01-01'), by = 1), market = mkts)
dt[market == 'GOLD', hasValidData := (date > '2005-01-01') & (date < '2018-01-01')]
dt[market == 'SILVER', hasValidData := (date > '2010-01-01') & (date < '2018-01-01')]
但它不起作用


有什么建议吗?(理想情况下,我希望y-tick-label自动设置)

你能发布一些数据吗?@AK88数据在数据表
dt
你从哪里获得
hasValidData:=
来自@AK88,我创建了假数据。返回
(日期>'2005-01-01')和(日期<'2018-01-01')
dt[, yorder := match(market, mkts)]
ggplot(dt) + geom_ribbon(aes(x = date, ymin = yorder, ymax = yorder+1, fill = hasValidData), alpha = 0.3)