我想将变量的值表示为 R 中散点图的颜色。
x <- rnorm(100) + 5
y <- rnorm(100) + 5
plot(x, y)
在这里,我想使用一个变量作为着色的输入。但如果我尝试
plot(x, y, col = x)
我得到了一些奇怪的东西,可能很明显。现在我可以像这样得到我想要的:
x_norm = (x - min(x)) / (max(x) - min(x))
col_fun <- colorRamp(c("blue", "red"))
rgb_cols <- col_fun(x_norm)
cols <- rgb(rgb_cols, maxColorValue = 256)
plot(x, y, col = cols)
但这似乎有点复杂,并且要使其与 NA 或 NaN 值一起使用,例如通过将它们赋予黑色作为颜色,并不是那么容易。为了我。有没有一种我忽略的简单方法可以做到这一点?