根据条件更改ggplot2中某些轴标签的格式

Pao*_*tto 9 r ggplot2 axis-labels

我有一个ggplot,我想根据预定义的条件只突出显示一些特定的x轴标签.

我知道轴文本是由

theme(axis.text = element_text(...))
Run Code Online (Sandbox Code Playgroud)

但这适用于轴的所有标签.我想要的是格式更改只应用于条件= 1的标签.

Did*_*rts 19

您可以ifelse()在内部包含函数element_text()以包含不同的标签.

ggplot(iris,aes(Species,Petal.Length))+geom_boxplot()+
  theme(axis.text.x=
          element_text(face=ifelse(levels(iris$Species)=="setosa","bold","italic")))
Run Code Online (Sandbox Code Playgroud)

或者,您可以element_text()在与级别数相同的长度内提供值向量.

ggplot(iris,aes(Species,Petal.Length))+geom_boxplot()+
 theme(axis.text.x = element_text(face=c("bold","italic","bold"),
                                   size=c(11,12,13)))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述