R 在ggplot中按组更改标签的默认颜色

R 在ggplot中按组更改标签的默认颜色,r,ggplot2,colors,R,Ggplot2,Colors,我用ggplot绘制了一个图,图中的点标有“项目”的文本和团队的颜色。我希望能够更改分配给每个团队的颜色,因为默认的颜色不太清晰。我在网上找到的大多数方法都试过了,但都没有效果 我已经在下面包含了全部代码——有趣的是在“#标签由团队着色”下面 projects.df <- data.frame(Doability = Projects$Doability, Impact = Projects$Impact) ggplot(projects.df, aes(Doability,Imp

我用ggplot绘制了一个图,图中的点标有“项目”的文本和团队的颜色。我希望能够更改分配给每个团队的颜色,因为默认的颜色不太清晰。我在网上找到的大多数方法都试过了,但都没有效果

我已经在下面包含了全部代码——有趣的是在“#标签由团队着色”下面

    projects.df <- data.frame(Doability = Projects$Doability, Impact = Projects$Impact)
ggplot(projects.df, aes(Doability,Impact)) + 
  #Coloured Quadrants
  annotate("rect", xmin = Inf, xmax = 0.5, ymin = Inf, ymax = 0.5, fill= "darkseagreen1")  + 
  annotate("rect", xmin = -Inf, xmax = 0.5, ymin = -Inf, ymax = 0.5 , fill= "azure1") + 
  annotate("rect", xmin = 0.5, xmax = Inf, ymin = 0.5, ymax = -Inf, fill= "lightyellow") + 
  annotate("rect", xmin = 0.5, xmax = -Inf, ymin = Inf, ymax = 0.5, fill= "mistyrose") + 
  geom_point() + xlim(0,1)+ ylim(0,1) +
  #Labels coloured by team
  geom_label(aes(label=Projects$Project), colour=factor(Projects$Team), fontface = "bold") + 
  #Axis arrows
  geom_segment(aes(x=-Inf,y=-Inf,xend=-Inf,yend=Inf),size=1.5, colour="darkred", arrow=arrow(length=unit(0.5,"cm"))) +
  geom_segment(aes(x=-Inf,y=-Inf,xend=Inf,yend=-Inf),size=1.5,colour="darkgreen", arrow=arrow(length=unit(0.5,"cm"))) + 
  theme(axis.text.x=element_blank(),axis.ticks.x=element_blank(), axis.text.y=element_blank(),axis.ticks.y=element_blank()) + 
  coord_cartesian(ylim = c(0, 1), clip="off") 

projects.df根据评论,将颜色移动到内部aes调用解决了问题,我可以调用“scale#u color#u manual”[下面的章节#按团队和#颜色着色的标签]


projects.df高。。您可以使用scale\u color\u手册进行着色,在上面的代码中根本不调用它。我还注意到您在aes之外调用了颜色:geom_label(aes(label=Projects$Project)、color=factor(Projects$Team)、fontface=“bold”)。这会给你奇怪的结果。你能做dput(head(Projects,6))并将输出粘贴到你的帖子中吗?否则,我们永远不会知道绘图出了什么问题。我曾尝试使用“缩放颜色”手册,但由于我的颜色在错误的位置,因此无法正常工作-谢谢,现在一切都解决了。我已将其移动到aes中。您可以为新学员添加答案