Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.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
将ggplot2中不同data.frames的数据合并到意外结果中_R_Ggplot2 - Fatal编程技术网

将ggplot2中不同data.frames的数据合并到意外结果中

将ggplot2中不同data.frames的数据合并到意外结果中,r,ggplot2,R,Ggplot2,假设我们有以下data.frames: dt1 <- data.frame(x=1:10,y=rnorm(10),g="a",c=1) dt2 <- data.frame(x=1:10,y=rnorm(10),g="b",c=2) dt <- rbind(dt1,dt2) bb <- data.frame(x=1:4,y=rep(-5,4)) 使用data.framebb中的数据生成额外的黑线。但是 bb <- data.frame(x=1:6,y=rep(-5

假设我们有以下data.frames:

dt1 <- data.frame(x=1:10,y=rnorm(10),g="a",c=1)
dt2 <- data.frame(x=1:10,y=rnorm(10),g="b",c=2)
dt <- rbind(dt1,dt2)

bb <- data.frame(x=1:4,y=rep(-5,4))
使用data.frame
bb
中的数据生成额外的黑线。但是

bb <- data.frame(x=1:6,y=rep(-5,6))

bb您对bb的第一个定义(ggplot2_0.9.2.1)也不适用于我:

这项工作:

p1 <- ggplot(data=dt,aes(x=x,y=y,group=g,colour=factor(c)))+geom_line()
p1 + geom_line(data=bb,aes(group=0,colour=factor(0))) +
      scale_colour_manual(values = c("black","blue","red"))

p1您对bb的第一个定义(ggplot2_0.9.2.1)也不适用于我:

这项工作:

p1 <- ggplot(data=dt,aes(x=x,y=y,group=g,colour=factor(c)))+geom_line()
p1 + geom_line(data=bb,aes(group=0,colour=factor(0))) +
      scale_colour_manual(values = c("black","blue","red"))

p1您可以指定要在不同层中使用的不同数据集:

qplot(x=x,y=y,data=dt,group=g,colour=c) + 
  geom_line(aes(x=x, y=y, group=NULL, colour=NULL), data=bb, colour="black")
这里,
geom_line
使用来自
bb
的数据,而不是
dt
。这里不是混合使用
qplot
geom
规范,而是使用纯
ggplot
符号:

ggplot(data = dt, aes(x = x, y = y)) +
  geom_point(aes(group = g, colour = c)) +
  geom_line(data=bb, colour="black")

可以指定要在不同图层中使用的不同数据集:

qplot(x=x,y=y,data=dt,group=g,colour=c) + 
  geom_line(aes(x=x, y=y, group=NULL, colour=NULL), data=bb, colour="black")
这里,
geom_line
使用来自
bb
的数据,而不是
dt
。这里不是混合使用
qplot
geom
规范,而是使用纯
ggplot
符号:

ggplot(data = dt, aes(x = x, y = y)) +
  geom_point(aes(group = g, colour = c)) +
  geom_line(data=bb, colour="black")

提供不同的数据集不起作用。这里的关键是为组和颜色空值提供新的数据集。奇怪的是,纯ggplot按预期工作,但qplot没有。这并不奇怪,
ggplot
调用仅定义
x
y
美学(这成为绘图的默认值)。提供不同的数据集不起作用。这里的关键是为组和颜色空值提供新的数据集。奇怪的是,纯ggplot按预期工作,但qplot没有。这并不奇怪,
ggplot
调用只定义了
x
y
美学(这成为绘图的默认值)。谢谢,这里的关键是提供组和颜色值。两个答案都很有帮助,很抱歉我不得不选择一个。很抱歉,我根本不关注这个讨论。该错误表示,美学(aes)“长度必须为1或与数据长度相同”。哪些数据需要与其他数据的长度相同?组和颜色值是如何实现这一点的?还是错误消息有误导性?谢谢,这里的关键是提供组和颜色值。两个答案都很有帮助,很抱歉我不得不选择一个。很抱歉,我根本不关注这个讨论。该错误表示,美学(aes)“长度必须为1或与数据长度相同”。哪些数据需要与其他数据的长度相同?组和颜色值是如何实现这一点的?或者错误消息是否具有误导性?