将geom_text定位在闪避的barplot上

我试图让这个标题不言自明,但是数据优先:

dtf <- structure(list(variable = structure(c(1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L), .Label = c("vma", "vla", "ia", "fma", "fla"), class = "factor"), ustanova = structure(c(1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L), .Label = c("srednja škola", "fakultet"), class = "factor"), `(all)` = c(42.9542857142857, 38.7803203661327, 37.8996138996139, 33.7672811059908, 29.591439688716, 26.1890660592255, 27.9557692307692, 23.9426605504587, 33.2200772200772, 26.9493087557604)), .Names = c("variable", "ustanova", "(all)"), row.names = c(NA, 10L), class = c("cast_df", "data.frame"), idvars = c("variable", "ustanova"), rdimnames = list( structure(list(variable = structure(c(1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L), .Label = c("vma", "vla", "ia", "fma", "fla"), class = "factor"), ustanova = structure(c(1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 2L), .Label = c("srednja škola", "fakultet"), class = "factor")), .Names = c("variable", "ustanova" ), row.names = c("vma_srednja škola", "vma_fakultet", "vla_srednja škola", "vla_fakultet", "ia_srednja škola", "ia_fakultet", "fma_srednja škola", "fma_fakultet", "fla_srednja škola", "fla_fakultet"), class = "data.frame"), structure(list(value = structure(1L, .Label = "(all)", class = "factor")), .Names = "value", row.names = "(all)", class = "data.frame"))) 

我想创build一个躲闪的barplot,做coord_flip并把一些文本标签内的酒吧:

 ggplot(bar) + geom_bar(aes(variable, `(all)`, fill = ustanova), position = "dodge") + geom_text(aes(variable, `(all)`, label = sprintf("%2.1f", `(all)`)), position = "dodge") + coord_flip() 

你可以在这里看到输出。

在这里输入图像描述

我想我在寻求一些微不足道的东西。 我想要文本标签“跟随”堆叠的酒吧。 标签正确地放置在y轴上,但是如何将它们正确地放置在x轴上?

这是你想要的吗?

 ggplot(bar) + geom_bar(aes(variable, `(all)`, fill = ustanova), position = "dodge") + geom_text(aes(variable, `(all)`, label = sprintf("%2.1f", `(all)`)), position = position_dodge(width = 1)) + coord_flip() 

关键是使用position = position_dodge(width = 1)而不是position = "dodge" ,这只是一个没有任何参数的快捷方式。

在这里输入图像描述


ggplot2_2.0.0您可以在?geom_textfind几个关于如何将geom_text定位在闪避或堆叠条(名为“ geom_text # Aligning labels and bars"的代码块)上的示例。 问答什么是position_dodge的宽度参数? 提供了一个更彻底的主题描述。