在wolframalpha网站上绘制多项式函数,以便于理解

时间:2013-11-27 19:44:03

标签: r function plot wolframalpha

在wolfram-alpha网站上绘制一个函数看起来像这样:

enter image description here

http://www.wolframalpha.com/link

在R中绘制相同的函数如下所示:

情节(函数(x)x ^ 2 - 3 * x - 10) enter image description here

Wolfram的默认情节更容易理解。我认为这是因为它显示了x轴(y = 0),并使抛物线居中。

我在数学方面不够好,只要看一下函数的公式,看看我应该把图集放在哪里,我正在绘制函数来了解不同函数如何创建不同的线,所以我需要这个中心到自动完成,因为否则我可能会误解情节。

是否有可能自动创建Wolfram-plot ,即我没有告诉R哪个中心情节是明智的?

3 个答案:

答案 0 :(得分:4)

polynom包会创建一些合理的默认值。

例如

library(polynom)

# your polynomial (coefficients in ascending powers of x order)
p <- polynomial(c(-10,-3,1))
plot(p)

enter image description here

 # a more complicated example, a polynomial crossing the x axis at -1,0,1,2,3,4,5

 p2 <- poly.calc(-1:5)
 p2 
 # -120*x + 154*x^2 + 49*x^3 - 140*x^4 + 70*x^5 - 14*x^6 + x^7 
 plot(p2)

enter image description here

答案 1 :(得分:2)

您可以设置绘制所需的间隔,如?plot.function中所述。另请参阅curveabline

plot( function(x) x^2 - 3*x - 10 , -15, 15) ; abline(h=0,v=0,lty=3)

curve(x^2 - 3*x - 10 , -15, 15) ; abline(h=0,v=0,lty=3)

答案 2 :(得分:0)

这是一篇相当古老的帖子,但我试图根据我的模型系数拟合多项式曲线。

基础R中的原文:

plot( y ~ x) 
curve(3*x - 2*x^2 + 2*x^3)   ##  random coefficients for easy example 

我使用ggplot2 - 所以我想使用从系数生成的曲线而不是+ geom_smooth(这也有效,但我更喜欢下面的曲线)

bestfit <- geom_smooth(method = "loess", se = T, size = 1) 

ggplot2 
+ bestfit

相反,我用上面的系数

创建了一个函数
test 
test <- function(x) {3*x - 2*x^2 + 2*x^3} 

然后我将它添加为ggplot

中的一个图层
ggplot2
+ stat_function(fun = test)

它给出了与基本绘图函数相同的曲线,但我可以在ggplot中添加所有附加图层