[英]have plot points coloured on a spectrum in R
我有一个要在R中的图表上播放的点列表。为了获得3个级别的信息(X轴,Y轴和另一个),我想在图表上绘制点并在比例上着色它们对于第三个变量。 我想要显示的每个点的百分比值为第三个变量(Z)。 因此,如果A的Z值为0.95,我希望它是一个鲜红色,但由于B只有Z = 0.65,我希望它暗红色朝向蓝色。 值从NA(我认为应该是蓝色)到0.99(亮红色)。
样本数据:
1 1 0.02937715
2 1 0.05872889
3 1 0.08802983
4 1 0.11725462
5 1 0.14637799
6 1 0.17537475
7 1 0.20421981
8 1 0.23288821
9 1 0.26135518
10 1 0.28959607
第三列给出Z值。
一些可重复使用的数据会有所帮助:
DF <- expand.grid(x=1:100, y=1:100)
DF$z <- abs(sin(DF$x/34) * cos(DF$y/22))
x
和y
是从1到100的网格; z
范围在0到1之间(该函数没有特别的,只是保持在0和1之间,并且没有非常简单的结构)。
plot(DF$x, DF$y, col=rgb((colorRamp(c("blue", "red"))(DF$z))/255), pch=19)
library("ggplot2")
ggplot(DF, aes(x, y, colour=z)) +
geom_point(shape=19) +
scale_colour_gradient(low="blue", high="red")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.