R:plot.new尚未被调用

时间:2019-03-27 12:08:11

标签: r ggplot2

我知道,这是一个非常老的问题,在plot.new has not been called yet等中已有提及。但是,那里的答案对我不起作用,所以我不得不再问一遍:

我正在读取一个短表,其中包含30行数据,两个不同的表:

lines <-scan("Wanna.txt", what="character", sep='\n')

它具有以下结构:

AA BB
5  149
12 5
15 5
100 7
...
AA BB
5 1
10 136
23 150
100 3

然后我将表读入数据结构:

Wanna5 <- read.table(textConnection(lines[1:5]), header=TRUE)
Wanna15 <- read.table(textConnection(lines[7:11]), header=TRUE)

当我做一个ggplot时,它会起作用

ggplot(data=Wanna5, mapping= aes(x=AA, y=BB)) + geom_line()

当我尝试添加简单的第二个数据集时

lines(Wanna15$AA, Wanna15$BB, type="l", col="green")

它告诉我旧的错误:

Error in plot.xy(xy.coords(x, y), type = type, ...) : 
plot.new has not been called yet

该怎么办?

1 个答案:

答案 0 :(得分:2)

似乎您正在混合ggplot和基本R图。为什么不使用ggplot简单地创建整个图,而不是先创建第一个图,然后再添加线?看起来像:

ggplot() + geom_line(data=Wanna5, mapping= aes(x=AA, y=BB))
             + geom_line(data = Wanna15, aes(x = AA, y = BB), 
                         col = 'green')

有帮助吗?