我試圖為類分配繪制拉蓋爾的正交多項式。我想創建 10 個函式,每個函式通過索引 i 分配給一個特定的多項式。
for (i in 1:10){
opl[i] <- function(x) {opl[3]}
}
然后 curve()用來繪制它。但它不起作用。該laguerre.polynomials()函式為您提供多項式作為串列,我認為問題在于我的回圈無法通過索引從串列中提取專案并將其分配給函式。
關于如何做到這一點的任何想法?
uj5u.com熱心網友回復:
您可以使用as.function,例如通過將多項式轉換為函式
library(orthopolynom)
library(ggplot2)
opl <- laguerre.polynomials(10)
opl_functions <- lapply(opl, as.function)
# x interval
x <- seq(-1, 1, 0.05)
# plot the first two polynomials
ggplot(data.frame(x), aes(x = x, y = y)) # basic graphical object
geom_line(aes(y = opl_functions[[1]](x)), colour = "red") # first layer
geom_line(aes(y = opl_functions[[2]](x)), colour = "blue") # second layer
# and so on ...
的第 i 個元素opl_functions是第 i 個多項式,取決于x。然后可以使用它來繪制多項式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/373014.html
上一篇:解決模擬問題
下一篇:整理ggplot中的資料框軸標簽
