根据 R 中的强度着色散点图

Coloring scatter plot in terms of an intensity in R

我们想用 X1,X2,X3,X4,X5(从 0/20 到 20/20 的连续等级)来解释连续变量 Y。

在绘制 YX1 时,我想根据均值 (X1+X2+X3+X4+X5)/5 对点进行着色,以查看在 [=13= 中表现不佳的候选人是否] 在全球范围内都是坏的。

所以,mean,从 0 到 20 不等,会是血红色并逐渐变成亮绿色(并在图例中注明)。一个人怎么能这样做呢?

以下是我通常绘制散点图的方式:

scatter.smooth(x=data$X1, y=data$Y1, main="Y1 ~ X1", xlab="X1", ylab="Y1")

更好的是,每个点都根据其 X1 值进行着色,并且在其周围有一个颜色 "ring" 对应于其均值的颜色。

如果你对 ggplot 没有异议,它会让这些事情变得简单。

通过连续变量 aes(color=myvar) 进行着色,具有您想要的直接开箱即用的行为。

使用 +scale_color_gradient(low='red', high='green')

自定义颜色

要画圆环,画两组点:第一个圆环颜色为 3(或其他)的点,然后在中心点画一个圆环颜色为 1 的点。