文本注释到ggplot

时间:2017-08-28 18:34:31

标签: r text ggplot2

我正在使用ggplots绘制PC图。 我知道这个问题已在之前的一些帖子中得到解答,但我还是无法解决我的问题。 我有一个名为tab的数据集,它是PCA的输出

     sample.id            pop         EV1         EV2
  HT185_MK8-2.sort.bam   HA_27 -0.03796869 0.046369552
  HT48_SD1A-37.sort.bam  HA_14  0.04208393 0.032961404
  HT53_IA1A-10.sort.bam  HA_1 -0.02580365 0.005262476
  HT260_MK1-4.sort.bam   HA_20 -0.06090545 0.005578504
  HT170_SD2W-14.sort.bam HA_17  0.01288395 0.012117833
  Q093_MK7-13.sort.bam   HA_26  0.06310162 0.188558067  

我想在图中的每个点上添加标签,这些点是来自几个人群的个体。所以我想给他们他们的人口ID(数据集中的pop列)。 我正在使用这个

ggplot(data=tab,aes(EV1,EV2, label=tab[,2])) + geom_point(aes(color=as.factor(pop))) + ylab("Principal component 2") + xlab("Principal component 1")

但我没有得到我想要的输出。 这是我的电脑情节! 所以任何人都可以帮助我在情节中的每个点上添加人口标签! 感谢enter image description here

1 个答案:

答案 0 :(得分:2)

尝试geom_text

geom_text(aes(label=as.character(pop)),hjust=0,vjust=0)

还要考虑查看plotly,或在标签上设置阈值,因为标记每个点会导致非常拥挤的情节,并且可能只有非常少的其他有用信息。