【发布时间】:2018-11-14 03:20:39
【问题描述】:
我正在尝试在我的 ggplot 中用每个方面的值标记 hline。facet_wrap 显示多个 Ratings,而 hline 值来自 Benchmark。
我曾尝试在 geom_hline 中使用label=,但这不起作用。我将不胜感激有关如何解决此问题的任何帮助和/或建议。
下面是一个示例代码来说明我的观点。先感谢您。
Rating = as.factor(c("A partner", "Approachable", "Arrogant", "Exciting"))
A1 = as.integer(c(38,53,42,40))
A2 = as.integer(c(40,41,55,35))
A3 = as.integer(c(43,57,11,23))
A4 = as.integer(c(56,36,48,50))
Benchmark = as.integer(c(50,20,64,43))
df_full <- data.frame(Rating, A1, A2, A3, A4, Benchmark)
df <- df_full[,c(1:5)]
library(reshape2)
df_long <- melt(df, id = "Rating")
library(ggplot2)
p<-ggplot(data=df_long, aes(x=variable, y=value, fill = variable, label = value)) +
#Order ratings
facet_wrap(factor(Rating, levels = c( "A partner"
,"Approachable"
,"Exciting"
,"Arrogant"))~., scales = "free") +
geom_bar(stat="identity") +
geom_text (aes()
, hjust = -0.5
, size = 5
,position = position_dodge(width = -1)) +
geom_hline(data = df_full
, aes(yintercept = as.integer(Benchmark))
, color = "black"
, linetype="dashed") +
coord_flip() +
ylim(0, 100)
p
【问题讨论】:
标签: r ggplot2 label geom-hline