如何更改 ggplot2 中的图例标题(附示例)
有两种简单的方法可以更改 ggplot2 图表中的图例标题:
方法一:使用labs()
ggplot(data, aes(x=x_var, y=y_var, fill=fill_var)) +
geom_boxplot() +
labs(fill=' Legend Title ')
方法2:使用scale_fill_manual()
ggplot(data, aes(x=x_var, y=y_var, fill=fill_var)) + geom_boxplot() + scale_fill_manual(' Legend Title ', values=c(' color1 ', ' color2 '))
本教程展示了如何在实践中使用这两种方法的示例。
方法 1:使用 labs() 更改标题
以下代码显示如何为给定数据集创建分组箱线图:
library (ggplot2) #create dataset data <- data.frame(team= rep (c('A', 'B', 'C'), each =50), program= rep (c('low', 'high'), each =25), values= seq (1:150)+ sample (1:100, 150, replace= TRUE )) #create boxplot ggplot(data, aes(x=team, y=values, fill=program)) + geom_boxplot()
默认情况下,ggplot2 使用数据集中的变量名称作为图例标题。但是,我们可以使用labs()函数轻松修改它:
library (ggplot2) #create dataset data <- data.frame(team= rep (c('A', 'B', 'C'), each =50), program= rep (c('low', 'high'), each =25), values= seq (1:150)+ sample (1:100, 150, replace= TRUE )) #create boxplot ggplot(data, aes(x=team, y=values, fill=program)) + geom_boxplot() + labs(fill=' Program Type ')
我们还可以在标题中添加换行符,方法是在我们想要新行开始的位置放置\ n:
library (ggplot2) #create dataset data <- data.frame(team= rep (c('A', 'B', 'C'), each =50), program= rep (c('low', 'high'), each =25), values= seq (1:150)+ sample (1:100, 150, replace= TRUE )) #create boxplot ggplot(data, aes(x=team, y=values, fill=program)) + geom_boxplot() + labs(fill=' Program\nType ')
方法 2:使用scale_fill_manual()更改图例标题
我们还可以使用scale_fill_manual()函数同时指定要使用的标题标题和颜色值向量:
library (ggplot2) #create dataset data <- data.frame(team= rep (c('A', 'B', 'C'), each =50), program= rep (c('low', 'high'), each =25), values= seq (1:150)+ sample (1:100, 150, replace= TRUE )) #create boxplot ggplot(data, aes(x=team, y=values, fill=program)) + geom_boxplot() + scale_fill_manual(' Program Type ', values=c(' pink ',' blue '))
请注意,颜色值可以是名称或十六进制颜色代码。