我有一个要在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
Run Code Online (Sandbox Code Playgroud)
第三列给出Z值.
Bri*_*ggs 14
一些可重复使用的数据会有所帮助:
DF <- expand.grid(x=1:100, y=1:100)
DF$z <- abs(sin(DF$x/34) * cos(DF$y/22))
Run Code Online (Sandbox Code Playgroud)
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)
Run Code Online (Sandbox Code Playgroud)

library("ggplot2")
ggplot(DF, aes(x, y, colour=z)) +
geom_point(shape=19) +
scale_colour_gradient(low="blue", high="red")
Run Code Online (Sandbox Code Playgroud)
