R ggplot2 Визуализируйте категориальную переменную, уровни которой появляются более одного раза - PullRequest
0 голосов
/ 09 мая 2020

Я пытаюсь визуализировать некоторые теннисные данные с помощью ggplot2 в R.

Вот мои данные:

     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))

Я хочу сделать диаграмму, которая выглядит как столбиковый график но на самом деле это не барный сюжет. Я бы хотел, чтобы на оси X были годы с 1999 по 2020 и соответствовали им уровню ранга.

Моя проблема в том, что ранг, который я преобразовал в категориальную переменную, имеет некоторые уровни, которые появляются более одного раза в время, и это усложняет мне задачу.

Я хочу сделать что-то вроде следующего pi c из Википедии с конкретным c цветом для каждого уровня переменной Rank.

enter image description here

Я хочу визуализировать результат Australian Open.

1 Ответ

1 голос
/ 09 мая 2020

Может быть, что-то вроде этого, используя geom_tile () для создания тепловой карты ... вместо диаграммы:

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

enter image description here

...