根据索引R更改图上点的颜色

时间:2019-01-18 15:22:16

标签: r

我想用不同的颜色绘制数据集中的异常。为此,我生成了随机数,根据条件注入了异常,然后将它们绘制了出来。但是我得到的情节是错误的。以下是代码:

n = 1000

a = 25

mu = 0

sigma = 0.5

data = rnorm(n,mu,sigma)

n_data = sample(1:n,25,replace = FALSE)

p_data = sample(1:n,25,replace = FALSE)

plot(data)
points(data[n_data],col=2)
points(data[p_data],col=3)

但这给了我一个错误的情节。它应该显示在整个图中分布的异常点,但是它显示这样的图。

enter image description here

如何根据索引正确绘制点?

2 个答案:

答案 0 :(得分:3)

在这里绘制没有指定x的向量data,因此x为x1 = 1... xn = length(data)

只需指出与之对应的x,它将起作用

points(n_data, data[n_data],col=2)
points(p_data, data[p_data],col=3)

答案 1 :(得分:0)

问题是您的随机值没有x坐标,因此绘图将简单地为每个值指定一个索引并将其视为您的x值。您总共有1000个点,但是每个有色点中只有25个有色。如果您要获取1000个有色点,它们的分布就会一样多。