r ggplot - размещение аннотаций на диаграмме концентрических окружностей с помощью координат_поляр

Я сделал диаграмму концентрических кругов, используя ggplot + geom_bar + polar_coord, и я борюсь с размещением аннотаций в правильном месте. Возьмите следующий код, модифицированный из предыдущего вопроса, который я задал, и его удовлетворительный ответ.

df <- data.frame(A=letters[1:12],
                 B=c(rep("Dim_1",4),rep("Dim_2",4),rep("Dim_3",4)),
                 C=c(rep("Ind_1",2),rep("Ind_2",2),rep("Ind_3",2),rep("Ind_2",2),rep("Ind_5",2),rep("Ind_6",2)))

ggplot(df, aes(factor(1), fill = C)) +
  geom_bar(width = 1, colour = NA) +                       
  stat_count(aes(yintercept = cumsum(rev(..count..))),     
             geom = "hline") +                             
  coord_polar()+
  annotate("text",label = "A", x = 1, y = 2.5,size=2)+
  annotate("text",label = "B", x = 1, y = 3.5,size=2)

Вот что я получаю:

Проблема в размещении. Я хотел бы разместить annotate текст вокруг круга. Но так как я создал диаграмму из geom_bar из 1 наблюдения я могу перемещать тексты только вдоль вертикальной оси.

Как я могу свободно размещать свои аннотации на графике? Спасибо заранее.

1 ответ

Решение

Не совсем понятно, но... вместо этого свободно комментируйте с помощью geom_text следующим образом:

    ggplot(df, aes(factor(1), fill = C)) +
  geom_bar(width = 1, colour = NA) +                       
  stat_count(aes(yintercept = cumsum(rev(..count..))),     
             geom = "hline") +                             
  coord_polar()+
  geom_text(label="A",x=1.2,y=2.5)+
  geom_text(label="B",x=1.5,y=3.5)

Это дает:

Вы можете редактировать, как вы хотите.

Другие вопросы по тегам