使用 2 个或更多变量在 R 中绘制函数曲线
Plotting a function curve in R with 2 or more variables
如何在 R 中为类似 vpd = function(k,D){exp(-k*D)}
的函数绘制曲线?
我想要一个 D
vs vpd
(0:1) 的图,假设 k
是常数。
我能找到的唯一问题是 How to plot a function curve in R。我已经尝试过:
plot.function(vpd, from=0, to=1, n=101)
curve(vpd, from=0, to=1, n=101, add=FALSE, type = "l")
但只得到
Error in -k * D : 'D' is missing
更新:解决了!
vpd <- function(D,k=0.05){exp(-k*D)} # D is the x axis
plot(vpd, from=1, to=100, ylim=0:1)
虽然 Mamoun Benghezal 的答案适用于您自己定义的函数,但在某些情况下,您可能想要绘制需要 1 个以上参数的预定义函数。在这种情况下,柯里化是一种解决方案:
library(functional)
k <- 0.05
vpd <- function(k,D){exp(-k*D)}
vpd_given_k <- Curry(vpd, k = 0.05)
curve(vpd_given_k, ylim = c(0, 1),
from = 1, to = 100,
xlab = "D", ylab = paste("vpd | k = ", k))
如何在 R 中为类似 vpd = function(k,D){exp(-k*D)}
的函数绘制曲线?
我想要一个 D
vs vpd
(0:1) 的图,假设 k
是常数。
我能找到的唯一问题是 How to plot a function curve in R。我已经尝试过:
plot.function(vpd, from=0, to=1, n=101)
curve(vpd, from=0, to=1, n=101, add=FALSE, type = "l")
但只得到
Error in -k * D : 'D' is missing
更新:解决了!
vpd <- function(D,k=0.05){exp(-k*D)} # D is the x axis
plot(vpd, from=1, to=100, ylim=0:1)
虽然 Mamoun Benghezal 的答案适用于您自己定义的函数,但在某些情况下,您可能想要绘制需要 1 个以上参数的预定义函数。在这种情况下,柯里化是一种解决方案:
library(functional)
k <- 0.05
vpd <- function(k,D){exp(-k*D)}
vpd_given_k <- Curry(vpd, k = 0.05)
curve(vpd_given_k, ylim = c(0, 1),
from = 1, to = 100,
xlab = "D", ylab = paste("vpd | k = ", k))