R 基于数值的几何图形抖动颜色

R 基于数值的几何图形抖动颜色,r,ggplot2,jitter,R,Ggplot2,Jitter,是否有一种方法可以根据数值为箱线图上的抖动点上色,例如: ggplot(data, aes(y = y_var, x = x_var)) + geom_jitter(size = 2, aes(color = ifelse(y_var < 5, "red", "black))) ggplot(数据,aes(y=y\u var,x=x\u var))+ geom_抖动(大小=2,aes(颜色=ifelse(y_值

是否有一种方法可以根据数值为箱线图上的抖动点上色,例如:

ggplot(data, aes(y = y_var, x = x_var)) +
  geom_jitter(size = 2, aes(color = ifelse(y_var < 5, "red", "black)))
ggplot(数据,aes(y=y\u var,x=x\u var))+
geom_抖动(大小=2,aes(颜色=ifelse(y_值<5,“红色”、“黑色”))
我添加了这个不太有效的可复制示例(绘图上的颜色与抖动调用不一致):


a在几何图形中列出颜色名称时,不会告诉颜色比例要使用什么颜色。它只是将值分成类别。字符串
为“红色”
为黑色“
不一定有任何意义。如果您想在几何图形中指定颜色,请给出您正在使用的颜色名称或十六进制代码,然后添加
scale\u color\u identity
“red”
实际上意味着“使其具有红色”,等等

库(tidyverse)
ggplot(测试数据,aes(y=a,x=b))+
geom_箱线图()+
几何抖动(aes(颜色=ifelse(a<5,“红色”、“黑色”))+
比例\颜色\标识()

更好的是(更具可伸缩性和可维护性)将关注点分离:让几何图形处理创建几何图形和映射到比例,让比例处理设置比例的外观。您可以使用
a<5
作为变量(一种代理变量,因为它不在您的数据帧中),该变量将接受真值或假值。然后使用颜色比例,例如
比例\u颜色\u手册
,根据真值或假值设置颜色

ggplot(测试数据,aes(y=a,x=b))+
geom_箱线图()+
几何抖动(aes(颜色=a<5))+
比例\颜色\手动(值=c(“真”=“红”、“假”=“黑”))


由(v0.2.0)于2018-07-03创建。

感谢您的回复。不完全正确,请参见我上面的可复制示例。您可以使用
缩放\u颜色\u标识
设置中的颜色。或者将
color
移到
aes()
color=ifelse(测试数据$aAh是的,我会按照比例\u颜色\u标识,谢谢!
a <- rnorm(100, mean = 5, sd = 1)
b <- as.factor(sample(0:1, 100, replace = TRUE))
test_data <- data.frame(cbind(a,b))
test_data$b <- as.factor(test_data$b)

ggplot(test_data, aes(y = a, x = b)) + 
  geom_boxplot()+
  geom_jitter(aes(color = ifelse(a < 5, "red", "black")))