我有一个这样的数据框
BP R2 LOG10
96162057 0.2118000 2.66514431
96162096 0.0124700 0.31749391
96162281 0.0008941 0.07012148
96163560 0.5011000 2.48505399
96163638 0.8702000 3.37778598
我想根据 LOG10 绘制 BP,并用 R2 为点着色。R2 是从 0 到 1 的连续值。
myplot <- read.cvs("mytable.csv",head=TRUE)
attach(myplot)
ggplot(myplot,aes(BP,LOG10, color=R2)) + geom_point()
到目前为止,一切都很好。但是,我想以手动选择的间隔和颜色显示 R2 颜色,就像这样(如果我有离散值)。
ggplot(myplot,aes(BP,LOG10, color=R2)) + geom_point() +
scale_color_manual(breaks= c("1","0.8","0.6","0.4","0.2","0"),
values = c("red","yellow","green","lightblue","darkblue"))
Error: Continuous value supplied to discrete scale
这看起来很漂亮,但我宁愿自己设置颜色。
ggplot(myplot,aes(BP,LOG10, color=R2)) + geom_point(shape=1) +
scale_colour_gradientn(colours = rainbow(10))
那么,如何从连续值(1-0.8、0.8-0.6、0.6-0.4、0.4-0.2、0.2-0)中手动选择间隔,并根据自己的喜好为它们着色(红色、黄色、绿色、浅色、深蓝色) ? 颜色之间的平滑渐变会很酷,但并不重要。