簡體   English   中英

ggplot2 圖中用線連接點

[英]Connecting points in ggplot2 graph with lines

正如問題中所說,我想連接 ggplot2 圖中的點。 這些點應該按照它們繪制到圖形的順序一個接一個地連接起來,如下所示:

在此處輸入圖像描述 抱歉畫的不好。


basepop <- matrix(c(10,30),nrow = 2)
matrixA <- matrix(c(0.4,-0.325,0.3,1.2),nrow = 2)
matrixA
z <- eigen(matrixA)
z$val
eigenmatrix <- z$vec
eigenmatrix
eigeninverse <- solve(eigenmatrix)
constmatrix <- eigeninverse %*% basepop
constmatrix



popdata = NULL

for(k in 1:100){
  predator <- c(constmatrix[1,1]*z$val[1]^k*z$vec[1,1] + constmatrix[2,1]*z$val[2]^k*z$vec[1,2])
  prey <- c(constmatrix[1,1]*z$val[1]^k*z$vec[2,1] + constmatrix[2,1]*z$val[2]^k*z$vec[2,2])
  
  popdata = rbind(popdata, data.frame(k,predator,prey))
}
library(ggplot2)
ggplot(popdata, aes(predator, prey, color = k)) +
  geom_point()

ggplot(popdata, aes(k, predator, color = k)) +
  geom_point() 

ggplot(popdata, aes(k, prey, color = k)) +
  geom_point()
print(popdata)

這是我計算獵物和捕食者系統流行度的代碼。

來自@Duck 的評論:只需將+ geom_line()+ geom_path()添加到 plot。 (“使用哪個”取決於您的使用: geom_line按 x 軸上的順序連接, geom_path按它們在數據中出現的順序連接,兩者都有有效用途。在這種情況下,它們看起來是相同的,但請保持如果您的真實數據發生變化,請記住這一點。)

ggplot(popdata, aes(predator, prey, color = k)) +
  geom_point() +
  geom_line()

帶有連接線的ggplot2

(其他地塊也是如此。)

我應該注意到順序很重要。

# left
ggplot(popdata, aes(predator, prey, color = k)) +
  geom_point() +
  geom_line(color="black")
# right
ggplot(popdata, aes(predator, prey, color = k)) +
  geom_line(color="black") +
  geom_point()

ggplot2,並排,點對線和反向

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM