R ggplot2可视化水平出现不止一次的分类变量

R ggplot2 Visualize categorical variable that levels appear more than once

我正在尝试使用 R 中的 ggplot2 可视化一些网球数据。

这是我的数据:

     Year<-c(1999:2020)
     Player <- rep("Federer",22)
     Rank <- 
     c("Q1","3R","3R","4R","4R","W","SF","W","W","SF","F","W","SF","SF","SF","SF","3R",
               "SF","W","W","4R","SF")
     data <- data.frame(Year, Player, Rank)
     data$Rank <- factor(data$Rank, levels = unique(data$Rank))

我想做的是一个看起来像条形图但实际上不是条形图的图表。我希望从 1999 年到 2020 年为 x-axis 年,并将它们与排名级别相对应。

我的问题是,我转换为分类变量的 Rank 有一些级别在一段时间内出现不止一次,这让我很为难。

我正在寻找类似维基百科的下图,为每个级别的 Rank 变量使用特定颜色。

澳网的结果就是我想形象化的结果

也许是这样的,使用 geom_tile() 制作热图..而不是条形图:

library(ggthemes)
ggplot(data,aes(x=factor(Year),y=Player,fill=Rank)) + 
geom_tile() + scale_fill_economist()