Python使用Matplotlib绘制抛物线图

时间:2016-02-15 20:59:50

标签: matplotlib

如何使用此功能构建图形?谢谢! :)我试过了,但我很困惑应该如何使用:https://stackoverflow.com/questions/30553585/graphing-a-parabola-using-matplotlib-in-python#=

vm.navigatorData = [];
var count = 0;
// creates a chart with 97 x points all with 0 y value:
_.times(97, function() {
    dayHolder.push({
        'x': count++,
        'y': 0
    });
});

2 个答案:

答案 0 :(得分:0)

def quadratic (a, b, c):
try:
    import matplotlib.pyplot as plt
    import math
    import numpy as np
    d = b**2-4*a*c
    convex_point = -b/(2*a)
    x = np.linspace(-50, 50, 1000);
    y = a**2 + b*x + c
    fig, ax = plt.subplots();
    ax.plot(x, y)
    if(d == 0):
        convex_point = -b/(2*a) #it is the x-interceptor when det is 0
        print('the convex point is at',convex_point, 'on the x-axis | the parabola intersect the y-axis at',c, '| the determinant is 0');
    elif(d < 0):
        print('Determinant is', d,'and if determinant is smaller than zero, there is no real solution');
    else:
        x_positive = (-b+ math.sqrt(d))/(2*a); # y = 0
        x_negative = (-b- math.sqrt(d))/(2*a); # y = 0
        print('the convex points is at',convex_point, 'on the x-axis |x_positive',x_positive,' |x_negative',x_negative,'| the parabola intersect the y-axis at',c);



except:
    print('try: import math')

除了没有显示图表:S

答案 1 :(得分:0)

def quadratic (a, b, c):
try:
    import matplotlib.pyplot as plt
    import math
    import numpy as np
    d = b**2-4*a*c
    convex_point = -b/(2*a)
    x = np.linspace(-10, 10, 1000);
    y = a**2 + b*x + c
    fig, ax = plt.subplots();
    ax.plot(x, y);
    plt.show()
    if(d == 0):
        convex_point = -b/(2*a) #it is the x-interceptor when det is 0
        print('the convex point is at',convex_point, 'on the x-axis | the parabola intersect the y-axis at',c, '| the determinant is 0');
    elif(d < 0):
        print('Determinant is', d,'and if determinant is smaller than zero, there is no real solution');
    else:
        x_positive = (-b+ math.sqrt(d))/(2*a); # y = 0
        x_negative = (-b- math.sqrt(d))/(2*a); # y = 0
        print('the convex points is at',convex_point, 'on the x-axis |x_positive',x_positive,' |x_negative',x_negative,'| the parabola intersect the y-axis at',c);
except:
    print('try: import math')

此代码工作:)