Как разместить метки на панели geom для каждого бара в R с помощью ggplot2



Я нашел вот это Как поставить метки над geom_bar в R с ggplot2, но он просто поставил метки(цифры) только на один бар.



вот, скажем, два бара для каждой оси X, как сделать то же самое?



мои данные и код выглядит так:



dat <- read.table(text = "sample Types Number
sample1 A 3641
sample2 A 3119
sample1 B 15815
sample2 B 12334
sample1 C 2706
sample2 C 3147", header=TRUE)

library(ggplot2)
bar <- ggplot(data=dat, aes(x=Types, y=Number, fill=sample)) +
geom_bar(position = 'dodge') + geom_text(aes(label=Number))


тогда мы получим:
enter image description here



похоже, что числовые тексты также расположены в шаблоне "dodge".
Я искал руководство geom_text найти некоторые информация, но не может заставить ее работать.



предложения?

752   2  

2 ответов:

попробуйте это:

ggplot(data=dat, aes(x=Types, y=Number, fill=sample)) + 
     geom_bar(position = 'dodge', stat='identity') +
     geom_text(aes(label=Number), position=position_dodge(width=0.9), vjust=-0.25)

ggplot output

чтобы добавить к ответу rcs, если вы хотите использовать position_dodge() с geom_bar (), когда x является POSIX.ct дата, вы должны умножить ширину на 86400, например,

ggplot(data=dat, aes(x=Types, y=Number, fill=sample)) + 
 geom_bar(position = "dodge", stat = 'identity') +
 geom_text(aes(label=Number), position=position_dodge(width=0.9*86400), vjust=-0.25)

Comments

    Ничего не найдено.