提问人:Hack-R 提问时间:3/1/2017 最后编辑:Hack-R 更新时间:3/1/2017 访问量:56
当我改变 x-lim 时,我的抛物线沿 x 轴移动
My parabola shifts along the x-axis as I change x-lim
问:
我有一些关于价格的数据和回归的需求(数量)方程。以下是可重复性数据:dput()
https://gist.github.com/hack-r/28d0f6845eafc7935f6cbb74fdd09637
我试图得到一个看起来像这样的情节,这样我就会知道最佳价格在哪里:
但是,我从中得到上面图的示例没有提供其数据并省略了一些代码,所以我不清楚他们是如何获得这一点的。
我的数据如下所示:
head(mydat)
gross_price cost quantity net_price 204 895.000 47.51235 16 847.4877 159 920.000 66.10084 3 853.8992 149 950.000 75.67797 6 874.3220 201 895.000 13.03794 10 881.9621 217 1016.329 114.95628 9 901.3731 288 1132.306 90.63706 16 1041.6690
所以,我这样做了:
par(mar = c(5,5,2,5))
with(mydat, plot(net_price, quantity,pch=1,xlab="Price",ylab="Quantity", xlim=c(0,1250),ylim=c(0,800)))
abline(a=(30.6117202), b=-0.0279182, col="green") # Demand Fn coef.s from regression
par(new = T)
mydat$predicted_q <- (30.6117202-0.0279182 * mydat$net_price)
mydat$profit <- mydat$predicted_q * mydat$net_price # quantity * net price
with(mydat, plot(net_price, profit, type="l", col="red3",axes=F, xlab=NA, ylab=NA))
这给了我这个:
- 注意:在撰写本文时,Stack Overflow 的图像主机 (imgur.com) 发生了重大中断,因此我无法正确显示绘图,因此出现了链接。
但看起来红线(抛物线)有点偏右,所以我试着改变它,看看发生了什么。显然,抛物线停留在同一个位置,而不管其余数据如何。那不好;这意味着我们无法正确解释情节。xlim
par(mar = c(5,5,2,5))
with(mydat, plot(net_price, quantity,pch=1,xlab="Price",ylab="Quantity", xlim=c(0,3000),ylim=c(0,800)))
abline(a=(30.6117202), b=-0.0279182, col="green") # Demand Fn coef.s from regression
par(new = T)
mydat$predicted_q <- (30.6117202-0.0279182 * mydat$net_price)
mydat$profit <- mydat$predicted_q * mydat$net_price # quantity * net price
with(mydat, plot(net_price, profit, type="l", col="red3",axes=F, xlab=NA, ylab=NA))
http://imageshack.com/a/img923/6971/r1gG6I.png
所以我心想,问题一定是抛物线被绘制在与其他层不同的层上,也许我可以用以下方法解决这个问题:lines()
par(mar = c(5,5,2,5))
with(mydat, plot(net_price, quantity,pch=1,xlab="Price",ylab="Quantity", xlim=c(0,3000),ylim=c(0,800)))
abline(a=(30.6117202), b=-0.0279182, col="green") # Demand Fn coef.s from regression
par(new = T)
mydat$predicted_q <- (30.6117202-0.0279182 * mydat$net_price)
mydat$profit <- mydat$predicted_q * mydat$net_price # quantity * net price
#with(mydat, plot(net_price, profit, type="l", col="red3",axes=F, xlab=NA, ylab=NA))
lines(mydat$profit, col="red3",type="l")
但这个结果甚至不是一个漂亮的平滑抛物线,这是我需要的,因为它是有用的......
答:
1赞
R. Schifini
3/1/2017
#1
将第一个图添加到抛物线图中。xlim
with(mydat, plot(net_price, profit, type="l", col="red3",axes=F,
xlab=NA, ylab=NA,xlim=c(0,1250)))
https://imageshack.com/i/poFMW7asj
和
with(mydat, plot(net_price, profit, type="l", col="red3",axes=F,
xlab=NA, ylab=NA, xlim = c(0,3000)))
https://imageshack.com/i/pn0VYxikj
评论
1赞
Hack-R
3/1/2017
啊,是的,这是有道理的!我要告诉自己,如果不是因为我所依据的坏例子,我早就意识到了这一点。
0赞
R. Schifini
3/1/2017
如果你设置了,你就会意识到抛物线有不同的轴。axes=T
0赞
Hack-R
3/1/2017
右。或。我只是盲目地效仿这个例子。我不认为我使用的示例的 OP 意识到了这个问题。axis(side = 4)
评论