首页 > 解决方案 > 如何重命名ggplot中的图例项?

问题描述

您可以使用 ggplot 图例手动更改项目吗?我目前有一个根据我的井号分组的情节。这些被归类为数字。对于其中一个网站,我想将其标记为一个角色,即 Fernhill。我可以手动重命名图例中的项目还是必须在我的数据框中创建一个新字段?

标签: rggplot2

解决方案


使用 or 中的参数labels(或其他变体之一)分别指定每个图例项的名称。scale_fill_manualscale_color_manual

可重现的示例 1:

data(mtcars)
mtcars$cyl <- as.factor(mtcars$cyl)
mtcars$am <- as.factor(mtcars$am)

library(ggplot2)
ggplot(mtcars, aes(x=cyl, y=mpg, fill=am))+
  geom_boxplot() +
  scale_fill_manual(name="Gear Type",labels=c("Automatic", "Manual"), values=c("dodgerblue4", "firebrick4"))

产生:

在此处输入图像描述

请注意,我使用labelsin 参数是scale_fill_manual()因为我通过 . 填充美学fill

在下面的示例中,因为我使用的是颜色美学映射(而不是fill),所以我将使用scale_color_manual

可重现的示例 2:

library(ggplot2)
ggplot(mtcars, aes(x=cyl, y=mpg, color=am))+
  geom_jitter() +
  scale_color_manual(name="Gear Type",labels=c("Automatic", "Manual"), values=c("dodgerblue4", "firebrick4"))

在此处输入图像描述


推荐阅读