如何在 R 中使用 ggplot2 更改图例形状?


默认情况下,图例的形状为圆形,但我们可以使用 ggplot2 软件包的 guides 函数来更改它。例如,如果我们有一个带有两个数字列(称为 x 和 y)和一个分类列 Group 的数据帧,那么对于分类列 Group 中类别的不同颜色值,可以在 x 和 y 之间使用以下命令创建一个散点图,其中图例具有不同的形状——

ggplot(df,aes(x,y,color=Group))+geom_point()+guides(colour=guide_legend(override.aes=list(shape=0)))

在此,我们可以将 shape 参数值更改为从 0 到 25 开始的任何值。

考虑以下数据帧——

示例

 实时演示

x<-rpois(20,5)
y<-rpois(20,2)
Group<-sample(c("Male","Female"),20,replace=TRUE)
df<-data.frame(x,y,Group)
df

输出

   x  y  Group
1  7  1  Female
2  7  0  Female
3  4  2  Male
4  3  2  Male
5  2  1  Male
6  9  0  Female
7  5  4  Male
8  3  1  Female
9  5  1  Female
10 6  1  Female
11 3  2  Male
12 5  1  Male
13 4  1  Male
14 5  3  Female
15 1  6  Female
16 5  3  Male
17 4  2  Female
18  5 5  Female
19 2  3  Female
20 5  4  Male

加载 ggplot2 软件包,并使用 Group 值的不同颜色在 x 和 y 之间创建散点图——

示例

library(ggplot2)
ggplot(df,aes(x,y,color=Group))+geom_point()

输出

使用不同的图例形状在 x 和 y 之间创建散点图——

示例

ggplot(df,aes(x,y,color=Group))+geom_point()+guides(colour=guide_legend(override.aes=list(shape=17)))

输出

更新于: 11-Feb-2021

1K+ 浏览次数

立即开启您的 职业

完成本课程以获得认证

开始学习
广告