考虑一个简单的ggplot2图
library(ggplot2)
dat <- data.frame(name=c("apple", "orange", "plum"),value=c(3,8,2),outlier=c(FALSE,TRUE,FALSE))
ggplot(dat)+geom_point(aes(x=value,y=name))
Run Code Online (Sandbox Code Playgroud)

有没有办法有条件地修改轴y标签(比如颜色)的样式属性,例如取决于outlier列dat?
结果就像是
在具有大量项目的图形上,此功能将极大地提高图形可读性和影响力.
Dav*_*urg 21
一个更简单的方法(IMO)就是创建一个条件颜色向量并将其解析成 axis.text.y
dat <- data.frame(name=c("apple", "orange", "plum"),value=c(3,8,2),outlier=c(FALSE,TRUE,FALSE))
colvec <- character(dim(dat)[1])
colvec <- ifelse(dat$outlier, "red", "black")
library(ggplot2)
ggplot(dat) +
geom_point(data = dat, aes(x=value,y=name)) +
theme(axis.text.y = element_text(colour=colvec))
Run Code Online (Sandbox Code Playgroud)
