我不确定这是否是您正在寻找的内容,当然您可以根据自己的目的进行修改,但这里有一小段代码可以帮助您入门。它构建了一个从 0 到 100 的水平仪表,您所要做的就是选择值val
(此处为 60)和文本sText
(此处为 Harbourough 003E)。
library(ggplot2)
val <- 60 ; sText <- "Harborough 003E"
df <- data.frame(y = seq(0, 100, by = 1), x = 1)
df.labs <- data.frame(y = c(0, 100, val),
lab = c("Most Deprived",
"Least Deprived",
sText))
ggplot(df, aes(x = x, y = y, fill = y)) +
geom_tile() +
geom_hline(yintercept = val, colour = "blue", size = 1) +
geom_text(data = df.labs, aes(x = 1, y = y, label = lab), hjust = c(0, 1, 0.5)) +
scale_fill_gradient(low = "red", high = "green", guide = FALSE) +
coord_flip() +
theme_void() +
theme(aspect.ratio = 0.1)
当然,您可以随意操作它,添加刻度线、值、标题或其他任何您需要的东西。
结果图是:
我希望这有帮助。