У меня есть набор гистограмм, и я хотел бы нанести метки на стандартное отклонение + - 1 и среднее значение. У меня есть строки, но мне нужны и ярлыки. Я хотел бы, чтобы метки в нижней части гистограмм были с белым фоном, чтобы шрифт читался на фоне цветов гистограммы.
library(dply)
library(ggplot2)
a = runif(1000,1,100)
b = runif(1000,1,100)
c = runif(1000,1,100)
amount = c(a,b,c)
cat = c(rep("a",1000), rep("b",1000), rep("c",1000))
hist.data = data.frame(amount,cat)
names(hist.data) = c("amount","cat")
hist.data$cat = factor(hist.data$cat, levels = c("a","b","c"))
pricedata = ddply(hist.data, c("cat"), summarize, avg = mean(amount), minus.stdev = mean(amount)-sd(amount),
plus.stdev = mean(amount) + sd(amount))
pricedata = pricedata[order(pricedata$avg),]
ggplot(hist.data, aes(x=amount, fill = cat))+
geom_histogram(color="white", alpha = .8, position = 'identity', binwidth = 5)+
theme_test()+
geom_vline(aes(xintercept = avg), data = pricedata, color = "black", size = 1)+
geom_vline(aes(xintercept = minus.stdev), data = pricedata, color = "black", size = .75, linetype = "dotted")+
geom_vline(aes(xintercept = plus.stdev), data = pricedata, color = "black", size = .75, linetype = "dotted")+
facet_grid(cat ~., scales = "free")+
scale_y_continuous(expand = c(0,0),name = "Count")+
scale_x_continuous(labels = scales::dollar, name="\nAmount", limits = c(0,100))