绘制关于两个颜色参数的离散数据

时间:2017-04-24 15:51:59

标签: r ggplot2 colors

我进行了主成分分析,现在我将结果绘制在R中(绘制了2514个个体的第一个与第二个主成分,并着色所有关于6个超群体的点以使群集可视化)。 R默认颜色很好,但我需要一个超级人群特别突出,所以我想把它变成黑色。我不关心其他5的颜色。

我无法应用我所读过的有关自定义调色板和使用ggplot进行绘图的内容。我试图创建一个新的调色板,但我在语法中混合这两个东西时遇到了麻烦。我必须告诉程序(1)关于它的超级人口信息的每个点的颜色,以及(2)使用这个新的调色板mypalette,但是在绘图语法中,两个信息都必须在“col”参数中,但是我想要放两个。这是迄今为止的代码,它没有达到我想要的目的:

Superpopulations<-PC$Superpop
mypalette=c("blue","violetred1","green1","darkorchid1","yellow1","black")

mypal=discrete_scale(aesthetics = Superpulations, scale_name = "Superpopulations", palette = mypalette)

superpopulation<-qplot(newPC2$PC1,newPC2$PC2, col=mypal, main = NULL ,xlab= NULL, ylab=NULL, size=I(2.5))
superpopulation + theme(legend.position="bottom")

我还尝试仅提取URUS并使用命令points()在其他点上以黑色单独绘制它们:

points(PCsurus2$PC1, PCsurus2$PC2, col="black")

但我没有看到情节有任何变化。

PC是一个数据框,其中前两列是主要组件值1和2,其他列是Superpop,其中包含超级人口的名称标签(如“URU”,“EUR”)。 在这里我离开图表。 我想将URU颜色从红色更改为黑色以突出显示该人口

1 个答案:

答案 0 :(得分:1)

我会建议不要使用qplot,它会教你不良习惯,并且很难让你接触语法背后的原则。这是ggplot()版本的样子:

ggplot(newPC2, aes(PC1, PC2, Superpulation)) +            #Copied your misspelling(!)
  geom_point(size = 2.5) +
  scale_color_manual(values = mypal) +
  theme(legend.position="bottom")