2017-10-15 95 views
0

我需要在具有相同x和y範圍的同一圖上繪製2個不同的數據。 Click here to see the results of the code。正如你所看到的,左邊的那個在2004年有一個空間。我需要在那裏放置第二個數據點(藍色)。然而,右邊的是結果。有人可以幫我解決這個問題嗎?R中的重疊圖

這是我當前的代碼:

plot1 <- c(64123456,75123456....,99417287) #total of 29 values 
plot2 <- c(80824322) 

plot(plot1, col="red",pch=16,xlab = "Year", ylab = "Population",main = "Population of XXX from 1990 to 2020",yaxt="n",xaxt="n",las=2) 
par(new=TRUE) 
plot(plot2, col="blue",pch=17,axes=FALSE,xlab="",ylab="") 

UPDATE: This是,當我用points(plot2, col="blue",pch=17,xlab="",ylab="")爲什麼放在第一x值的結果呢?

+0

'圖(1)''然後情節(2,添加= TRUE)'? – Phil

+0

你好。對不起,它不起作用。 – Keeper

回答

0

我不知道如果我理解正確,但下面的代碼爲plot2值puting向空的地方......

我剛剛創建了一個假數據,因爲你沒有共享整個數據。

data <- 1:31 
data[15]<-NA 

plot1 <- data 

plot2 <- 15 

date <- as.character(1990:2020) 

plot(date,plot1, col="red",pch=16,xlab = "Year", 
ylab = "Population",main = "Population of XXX from 1990 to 2020") 
points("2004" ,plot2,col="blue") 

這裏是輸出。

enter image description here

+0

它的工作!我現在明白我的問題。非常感謝! – Keeper

0

使用plot的第一次,然後points

plot1 <- c(64123456,75123456,99417287) #total of 29 values 
plot2 <- c(80824322) 
plot(plot1, col="red",pch=16,xlab = "Year", ylab = "Population",main = "Population of XXX from 1990 to 2020",yaxt="n",xaxt="n",las=2) 
points(plot2, col="blue",pch=17,axes=FALSE,xlab="",ylab="") 
+0

我刪除了軸,因爲它提供了一個錯誤。代碼運行但第二個數據放在第一個x值上。圖像作爲更新放置在問題上。 – Keeper

+0

@Keeper:你沒有任何東西將你的藍點綁定到正確的x軸值。由於您只有一個值,因此默認情況下會將其與第一個x值相關聯。你需要做'points(xx,plot2,col =「blue」,...)',其中'xx'是對應於2004年的x值(如果我計算正確,''xx = 15')。 –

+0

我明白我的錯誤,現在正在工作。謝謝! – Keeper