Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.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 带有ggplot2的奇怪线条_R_Ggplot2 - Fatal编程技术网

R 带有ggplot2的奇怪线条

R 带有ggplot2的奇怪线条,r,ggplot2,R,Ggplot2,我有以下数据集: > str(dat) 'data.frame': 5000 obs. of 3 variables: $ y: num 0.864 0.869 0.871 0.879 0.874 0.871 0.871 0.873 0.864 0.869 ... $ A: Factor w/ 5 levels "0.2","0.5","0.8",..: 1 1 1 1 1 1 1 1 1 1 ... $ x: num 1 2 3 4 5 6 7 8 9 10 ... &g

我有以下数据集:

> str(dat)
'data.frame':   5000 obs. of  3 variables:
 $ y: num  0.864 0.869 0.871 0.879 0.874 0.871 0.871 0.873 0.864 0.869 ...
 $ A: Factor w/ 5 levels "0.2","0.5","0.8",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ x: num  1 2 3 4 5 6 7 8 9 10 ...
> head(dat)
      y   A x
1 0.864 0.2 1
2 0.869 0.2 2
3 0.871 0.2 3
4 0.879 0.2 4
5 0.874 0.2 5
6 0.871 0.2 6
“x”列是向量
c(1:5000)

因此,在绘制以下绘图时,我不理解某些线条的存在:

ggplot() + geom_line(aes(x=x, y=y, color=A), data=dat) 
我所说的线由图中的三个黑色箭头表示:

编辑:下面是一个具有可复制模拟数据集的类似示例:

set.seed(666)
mu <- rep(c(200, 400, 600, 300, 500), each=1000)
A <- factor(rep(c(1,2,3,1,2), each=1000))
y <- rnorm(length(mu), mu, 100)
dat <- data.frame(x=1:length(mu), y=y, A=A)
ggplot() + geom_line(aes(x=x, y=y, color=A), data=dat)
set.seed(666)

mu您需要在数据帧中使用另一个变量来表示不同的块(即具有相同颜色的区域)和
geom_line中的
参数

dat <- data.frame(x=1:length(mu), y=y, A=A, B=gl(5, 1000))
ggplot() + geom_line(aes(x=x, y=y, color=A, group=B), data=dat)

dat您能否对数据进行子集划分并生成一个可复制的示例?一些
y
x
值可能不是您期望的值。我如何附加数据?我不知道这些线的原因如何与y值相关,我确切地知道x=1:5000鉴于所有结果(dat$x==1:5000)Ok-我已经找到了如何模拟一个类似的例子,我将编辑我的帖子。对于一个可复制的例子,+1。
dat <- data.frame(x=1:length(mu), y=y, A=A, B=gl(5, 1000))
ggplot() + geom_line(aes(x=x, y=y, color=A, group=B), data=dat)