如何为两个变量包含颜色渐变

时间:2014-11-25 16:58:40

标签: r colors ggplot2 group-by

我的chrom 1数据集看起来像这样

head(data)
  SNP     BP       P    Dataset          LD
1  SNP1 541095 0.00529 expression 0.000610863
2  SNP2 541095 0.07897   original 0.066610863
3  SNP3 541133 0.21990   original 0.040534557
4  SNP4 541233 0.47890 expression 0.008216450
5  SNP5 541260 0.39790   original 0.010310200
6  SNP6 541260 0.19210 expression 0.000390915
7  SNP7 541265 0.000001 original 1
7  SNP7 541265 0.00001 expression 1

我想将两个数据集叠加到一个图中,并显示SNP7与其他SNP的LD相关性。

到目前为止,这是我能想到的

  Position<-data$BP/1E6
  ggplot(data, aes(x=Position, y=-log10(P), color=Dataset, shape=Dataset)) +
  geom_point(size=4) + xlim(540101/1E6,1565570/1E6) + ylim(0,10) +
  geom_hline(aes(yintercept=7), color="#a50f15")

我无法根据基于LD的渐变颜色对变体进行分组,而是仅为数据集显示一种颜色

ggplot(data, aes(x=Position, y=-log10(P), colour=LD, shape=Dataset)) +
 geom_point(size=4) + xlim(540101/1E6,1565570/1E6) + ylim(0,10) +
 geom_hline(aes(yintercept=7), color="#a50f15")

是否可以

1)将数据集Original的颜色更改为红色,将表达式更改为蓝色

2)根据LD值制作组

       LD values   dataset   color     dataset   color
group1 0 to 0.2    original  light blue  expression light red
group2 0.2 to 0.4  original  .         expression .
group3 0.4 to 0.6  original  .         expression .
group4 0.6 to 0.8  original  .         expression .
group5 0.8 to 1.0  original  dark blue expression dark red

非常感谢

0 个答案:

没有答案