散点图指向子集颜色形状ifelse

时间:2014-05-30 08:11:47

标签: r plot subset point

我想做一个散点图,其中一个子集中的某些值在颜色和形状上的绘制方式不同。 我已经解决了以下代码,但我无法做到正确。 任何帮助非常感谢!

# My data
iris
iris$Code <- 1:150

# A selection of my data I'd like to plot differently
subset <- subset(iris, iris$Sepal.Width<3.5)
sel <- as.character(subset$Code) # I think the problems start here :)

# Plotting doesn't work
plot(iris$Sepal.Length ~ iris$Sepal.Width,
     col=ifelse(iris$Code==sel, "red", "black"),
     pch=ifelse(iris$Code==sel, 17, 1))

1 个答案:

答案 0 :(得分:3)

试试这个:

#define subset
sel <- iris[iris$Sepal.Width<3.5,"Code"]
#plot
plot(iris$Sepal.Length ~ iris$Sepal.Width,
     col=ifelse(iris$Code %in% sel, "red", "black"),
     pch=ifelse(iris$Code %in% sel, 17, 1))

注意:在您的代码中存在一些明显的错误:

dd <- iris - 为什么要分配给dd而从不使用它?

iris$Sepal.Widith - 拼写

... "black") - 最后缺少逗号。