Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 根据行的值更改qplot的颜色_R_Ggplot2 - Fatal编程技术网

R 根据行的值更改qplot的颜色

R 根据行的值更改qplot的颜色,r,ggplot2,R,Ggplot2,我想创建一个qplot,其中“物种”列中任何值为“setosa”的行都被涂成红色 是否有一种非常简单的方法将其添加到下面的qplot中 df使用ggplot而不是qplot进行更多控制,例如: library(ggplot2) df <- iris df$myCol <- ifelse(df$Species == "setosa", "red", "black") qplot(Species, Petal.Length, data = df, col = myCol) 另一个

我想创建一个qplot,其中
“物种”
列中任何值为
“setosa”
的行都被涂成红色

是否有一种非常简单的方法将其添加到下面的qplot中

df使用ggplot而不是qplot进行更多控制,例如:

library(ggplot2)

df <- iris
df$myCol <- ifelse(df$Species == "setosa", "red", "black")

qplot(Species, Petal.Length, data = df, col = myCol)

另一个带有图例的选项:

df$myGroup <- ifelse(df$Species == "setosa", "setosa", "not setosa")

ggplot(df, aes(Species, Petal.Length, col = myGroup)) +
  geom_point() +
  scale_color_manual(values = c("setosa" = "red", "not setosa" = "black"))

df$myGroup非常感谢!我认为我应该离开qplot,转而使用ggplot命令,所以也感谢您包含这些示例!
ggplot(df, aes(Species, Petal.Length, col = myCol)) +
  geom_point() +
  scale_color_identity()
df$myGroup <- ifelse(df$Species == "setosa", "setosa", "not setosa")

ggplot(df, aes(Species, Petal.Length, col = myGroup)) +
  geom_point() +
  scale_color_manual(values = c("setosa" = "red", "not setosa" = "black"))