簡體   English   中英

在r中繪制多個相似方程

[英]Plot multiple similar equations in r

我是R的新手。我想繪制一個這樣的圖。 在此處輸入圖片說明

曲線由以下等式創建:

(log(0.4)-(0.37273*log(x)-1.79389))/0.17941 
(log(0.5)-(0.37273*log(x)-1.79389))/0.17941
(log(0.6)-(0.37273*log(x)-1.79389))/0.17941 

等式相似,唯一的區別是第一個log(XXX)。 我已經通過為每個方程式重復plot()來手動繪制圖形。 但我認為必須有一種方法來分配一個簡單的變量,例如

x<-c(0.4,0.5,0.6,0.7)

然后自動繪制所有曲線。 我嘗試使用數據框制作一組方程式,但失敗了。

您可以創建一個函數生成函數,然后循環關注的值。 例如

# takes a value, returns a function
logfn <- function(b) {
    function(x) (log(b)-(0.37273*log(x)-1.79389))/0.17941
 }

x <- c(0.4,0.5,0.6,0.7)
# empty plot
plot(0,0,type="n", ylim=c(-5,5), xlim=c(1,8), xlab="Lenght", ylab="Z-score")
# add plots for questions with `curve()`
for(v in x) {
    curve(logfn(v)(x),add=T)
}

暫無
暫無

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

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