绘制相同的方程式但不同的图形。升
Plotting same equation but different graph. l
我尝试用指数函数 f(x) = exp( x ) 在 a = 0 和 n = 1 处绘制泰勒展开图。
起初,我写了等式#### n = 1
并绘制了它。但它无法将线拟合到 Exp(x)
的图形。我尝试将符号“+”重新定位到上一行,如等式 # n = 1
所示,它奏效了。
除了运算符 (+) 的位置不同,这些方程式完全相同。
用于绘图的方程式(#### n = 1
、# n = 1
)有何不同?
绘图中运算符号的位置重要吗?
f1 <- function(x) exp( x )
x <- seq( -1, 1, by = 0.025 )
a <- 0
#### n = 1
f1.10 <- function( x ){
exp( a ) / factorial( 0 ) * ( x - a )^0
+ exp( a ) / factorial( 1 ) * ( x - a )^1
}
# n = 1
f1.1 <- function( x ){
exp( a ) / factorial( 0 ) * ( x - a )^0 +
exp( a ) / factorial( 1 ) * ( x - a )^1
}
plot( x, exp(x), ylab = "exp(x)", type = "l", lwd = 3 )
curve( f1.1, -0.5, 0.5, add = T, type = "l", lwd = 2, col = "yellow" )
curve( f1.10, -0.5, 0.5, add = T, type = "l", lwd = 2, col = "blue" )
]1
在R中,行头的+
表示换行。如果将 +
放在行尾,R 会将脚本中的下一行识别为当前行的延续。
所以,
f1.10 <- function( x ){
exp( a ) / factorial( 0 ) * ( x - a )^0
+ exp( a ) / factorial( 1 ) * ( x - a )^1
}
与
相同
f1.11 <- function( x ){
exp( a ) / factorial( 1 ) * ( x - a )^1
}
这两个函数产生不同的结果,而且它们并不相同。
f1.10(seq(10))
#[1] 1 2 3 4 5 6 7 8 9 10
f1.1(seq(10))
#[1] 2 3 4 5 6 7 8 9 10 11
当 n 是 1
f1.10
产生 1
而 f1.1
产生 2 或者我们甚至可以产生一个介于 -0.5
和 [=17 之间的随机数=] 如下所示,看看它们是否产生相同的结果。
set.seed(777)
x <- runif(100, min = -0.5, max = 0.5)
min(f1.10(x))
#[1] -0.4940781
max(f1.10(x))
#[1] 0.4950499
min(f1.1(x))
#[1] 0.5059219
max(f1.1(x))
#[1] 1.49505
您可以看到 f1.10
被限制在 -0.5
和 0.5
之间,而 f1.1
则不是。
我尝试用指数函数 f(x) = exp( x ) 在 a = 0 和 n = 1 处绘制泰勒展开图。
起初,我写了等式#### n = 1
并绘制了它。但它无法将线拟合到 Exp(x)
的图形。我尝试将符号“+”重新定位到上一行,如等式 # n = 1
所示,它奏效了。
除了运算符 (+) 的位置不同,这些方程式完全相同。
用于绘图的方程式(#### n = 1
、# n = 1
)有何不同?
绘图中运算符号的位置重要吗?
f1 <- function(x) exp( x )
x <- seq( -1, 1, by = 0.025 )
a <- 0
#### n = 1
f1.10 <- function( x ){
exp( a ) / factorial( 0 ) * ( x - a )^0
+ exp( a ) / factorial( 1 ) * ( x - a )^1
}
# n = 1
f1.1 <- function( x ){
exp( a ) / factorial( 0 ) * ( x - a )^0 +
exp( a ) / factorial( 1 ) * ( x - a )^1
}
plot( x, exp(x), ylab = "exp(x)", type = "l", lwd = 3 )
curve( f1.1, -0.5, 0.5, add = T, type = "l", lwd = 2, col = "yellow" )
curve( f1.10, -0.5, 0.5, add = T, type = "l", lwd = 2, col = "blue" )
在R中,行头的+
表示换行。如果将 +
放在行尾,R 会将脚本中的下一行识别为当前行的延续。
所以,
f1.10 <- function( x ){
exp( a ) / factorial( 0 ) * ( x - a )^0
+ exp( a ) / factorial( 1 ) * ( x - a )^1
}
与
相同f1.11 <- function( x ){
exp( a ) / factorial( 1 ) * ( x - a )^1
}
这两个函数产生不同的结果,而且它们并不相同。
f1.10(seq(10))
#[1] 1 2 3 4 5 6 7 8 9 10
f1.1(seq(10))
#[1] 2 3 4 5 6 7 8 9 10 11
当 n 是 1
f1.10
产生 1
而 f1.1
产生 2 或者我们甚至可以产生一个介于 -0.5
和 [=17 之间的随机数=] 如下所示,看看它们是否产生相同的结果。
set.seed(777)
x <- runif(100, min = -0.5, max = 0.5)
min(f1.10(x))
#[1] -0.4940781
max(f1.10(x))
#[1] 0.4950499
min(f1.1(x))
#[1] 0.5059219
max(f1.1(x))
#[1] 1.49505
您可以看到 f1.10
被限制在 -0.5
和 0.5
之间,而 f1.1
则不是。