Ami*_*hli 3 r colors legend shapes ggplot2
在我有 2 个图例(一个用于形状,一个用于颜色)的情节中,我的老板发现颜色图例已经选择了其中一种形状令人困惑。一个例子:
a <- data.frame(name = c("A","B","C","D"),
type = c("dog","dog", "cat", "cat"),
location = c("house", "house", "house", "garden"),
count = c(3,1,5,8))
ggplot(a, aes(x=name, y=count, color=location, shape=type)) +
geom_point(size=7)
Run Code Online (Sandbox Code Playgroud)
产生以下内容:

在此示例中,“位置”图例通过显示彩色圆圈来解释颜色(但圆圈也表示猫,这显然令人困惑)。如何强制“位置”图例仅显示颜色,而不是形状?也许将位置显示为红色和蓝色矩形会比较理想。
您可以使用函数guides()并将override.aes=颜色图例的形状更改为矩形。然后,您可以从图例键中删除背景,以便使用theme().
ggplot(a, aes(x=name, y=count, color=location, shape=type)) +
geom_point(size=7)+
guides(color=guide_legend(override.aes=list(shape=15)))+
theme(legend.key=element_blank())
Run Code Online (Sandbox Code Playgroud)
