数据集就是这样
library(tidyverse)
library(lubridate)
tarrif <- tibble(
date = c(as.Date("2018-01-01"),as.Date("2018-02-07"),as.Date("2018-03-23"),
as.Date("2018-04-02"),as.Date("2018-05-01"),as.Date("2018-07-01"),
as.Date("2018-07-06"),as.Date("2018-08-23"),as.Date("2018-09-24"),
as.Date("2018-11-01"),as.Date("2019-01-01"),as.Date("2019-02-07"),
as.Date("2019-06-01"),as.Date("2019-06-15"),as.Date("2019-07-01"),as.Date("2019-09-01"),
as.Date("2019-09-17"),as.Date("2019-12-26"),as.Date("2020-02-07"),
as.Date("2020-02-08"),as.Date("2020-02-14"),as.Date("2020-04-30")),
china = c(8.0,8.0,8.0,8.4,8.3,7.2,10.1,14.4,18.3,18.2,16.5,
16.5,20.7,20.7,20.7,21.8,21.1,20.9,20.9,20.9,20.3,20.3),
us = c(3.1,3.2,3.8,3.8,3.8,3.8,6.7,8.2,12.0,12.0,12.0,12.0,12.0,
17.6,17.6,21.0,21.0,21.0,21.0,21.0,19.3,19.3),
pd_china = c("A","A","A","B","C","D","E","F","G","I","H",
"H","J","J","K","L","M","N","N","N","O","O")
)
d <- tibble(
date = seq(as.Date("2018-01-01"),
as.Date("2020-04-30"),
by = "1 day")
)
d_tar <- left_join(d,tarrif,by = "date")
d_tar <- fill(d_tar,china,.direction = "down")
d_tar <- fill(d_tar,us,.direction = "down")
d_tar <- fill(d_tar,pd_china, .direction = "down")
我用d_tar作图 这样的代码
ggplot() +
geom_ribbon(data = d_tar,
aes(date,ymin = us,ymax = china,fill = "pd_china")) +
geom_line(data = d_tar,
aes(x = date,y = china),
size = 1) +
geom_line(data = d_tar,
aes(x = date,y = us),
size = 1)
但是结果就像小偷 我给pd_china这么多观察 为什么色带填充只有一种颜色? enter image description here