如何更改ggplot中的标签?

How to change labels in ggplot?

我有一个图表:

p <- ggplot(iris, aes(x=Species, y=Petal.Length)) + 
  geom_boxplot(outlier.shape=NA)
p

如何更改 x 标签,例如 "set"、"ver" 和 "virg"? 我不想更改原始数据。

您可以使用 scale_x_discrete 并调整 labels:

p + scale_x_discrete(labels = c("set", "ver", "virg"))

不过要注意顺序。为避免出现问题,您还可以在 breaks 中添加原始因子水平,如@Z.Lin 的评论:

p + scale_x_discrete(breaks = c("setosa", "versicolor", "viginica"), 
                     labels = c("set", "ver", "virg"))