我想在李克特图的右侧添加文本。
我尝试使用geom_text()进行此操作,但是我不知道如何将正确的字符串加载到geom_text()函数中。
这是一个示例数据集:
library(likert)
data <- data.frame("bad carpet" = factor(sample(1:5, 50, replace=T)),
"bad shower" = factor(sample(1:5, 50, replace=T)),
"bad bath" = factor(sample(1:5, 50, replace=T)))
plot(likert(data))
这将产生:problem
我想要的东西(当然带有正确的字体和大小): solution
我已经添加:
plot(likert(data)) + scale_y_continuous(limits=c(-100,150)) +
coord_flip(ylim=c(-110,110)) +
theme(plot.margin=unit(c(0.2,2,0.2,0.2),"cm"))
为文本产生更多的空间。 Geom_text()应该添加在两者之间的某个位置,但这就是我遇到的问题。
答案 0 :(得分:0)
如其他答案所述(例如here和here),您可以将coord_
中的任何功能与clip="off"
一起使用,以添加外部任何几何图形的注释绘图区。
绘图代码的这一附加功能可以使您接近,但必须尝试使用大小和颜色才能使其完全匹配。
p <- plot(likert(data)) +
scale_y_continuous(limits=c(-100,150)) +
coord_flip(ylim=c(-110,110), clip = "off") +
theme(plot.margin=unit(c(0.2,2.25,0.2,0.2),"cm"))
p + annotate("text", label=labs, x=c(1:3), y=c(125), hjust=0, size=3, colour="grey30")