R语言 为什么我的GGplot图例没有填充颜色?

vof42yt1  于 2023-01-22  发布在  其他
关注(0)|答案(1)|浏览(452)

我用这个代码:

ggplot(all,aes(x=substrate, y=Ca))+
  geom_boxplot(data=weed,aes(colour=species))+
  scale_colour_manual(values="green3",name=NULL,labels="substrate\nmineral content")+
  geom_jitter(position = position_jitter(width = 0.22),
              alpha=0.75, size=3.5,
              aes(fill=species,shape=type))+
  scale_fill_manual(values=c("red","blue","purple","darkorange","darkgrey","orange2","grey2","darkgreen","black"))+
  scale_shape_manual(values=c(24,21,22))+
  labs(y="Ca mg/kg")

给予我这样一幅图

但正如你所看到的,图例没有填充。
当我删除箱线图,给我水平的绿色线,然后改变fill=specie,到colour=species,和scale_fill_manual的颜色,它的工作,所以这是一些与图例没有从填充值,但我不知道如何解决它。

33qvvth1

33qvvth11#

查看其他数据后发现问题是geom_point的颜色图例的默认形状没有填充。使用guides更改它,如下所示:

library(ggplot2)

mtcars |> 
  ggplot(aes(cyl, wt, fill = factor(gear), shape = factor(carb))) +
  geom_jitter(position = position_jitter(width = 0.22), size = 4) +
  scale_shape_manual(values=c(24,21,22,23,24,25)) +
  guides(fill = guide_legend(override.aes = list(shape = 24)))

相关问题