R 在ggplot中按组更改标签的默认颜色
我用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
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中。您可以为新学员添加答案