Gnu Octave二次方程图

时间:2014-06-25 08:47:27

标签: gnuplot octave gnu quadratic

我失去了两天尝试这样做但没有结果。如何绘制二次方程的抛物线和根。像this这样的东西。我只需要能够看到抛物线并且它在写坐标处横过横坐标。

这就是我所拥有的:

x = linspace(-50,50);
y = 1.*x.*x - 8.*x + 15;
plot(x,y)
hold on;
grid()

rts = roots([1,-8,15]);
plot(rts, zeros(size(rts)), 'o', "color", "r")

结果是: enter image description here

正如你所看到的,抛物线的顶部是0纵坐标,而不是它。我将感激你的帮助!

2 个答案:

答案 0 :(得分:2)

使用较小的linspace范围对我来说很好:

x = linspace(1,6);
y = 1.*x.*x - 8.*x + 15;
plot(x,y)
hold on;
grid()

rts = roots([1,-8,15]);
plot(rts, zeros(size(rts)), 'o', "color", "r")

enter image description here

答案 1 :(得分:0)

Christoph是正确的,情节可能会产生误导,因为一个巨大的空间可以使曲线的一部分在横坐标下面变平,如果你没有想到并且你在计算顶点时犯了一些错误,就像我一样你吃完了!这是另一种解决方案,我希望这是正确的!

ezplot(@(x,y) x.^2 -x.*8 -y.+ 15)
hold on
grid on
rts = roots([1,-8,15]);
plot(rts,zeros(size(rts)),'o',"color","r");
line(xlim,[0 0], 'linestyle', '--')

enter image description here