我想知道如何使用matplotlib在python上绘制此等式“ x 4-2x 2 + 1”的图形。
如果可能的话,该图也为“ f(x)= x ** 3”
像您这样的程序员的任何帮助对于新手或新学习者都将有用
答案 0 :(得分:1)
这是一种简单的方法。
import numpy as np
from matplotlib import pyplot as plt
def func(x):
# implements the poly
return x ** 4 - 2 * x ** 2 + 1
x = np.linspace(-2, 2, 100) # 100 points, for x spannig -2 to 2
fx = func(x)
plt.plot(x, fx)
plt.show()
答案 1 :(得分:0)
如果您希望间隔[a,b]中的x值具有n个点(精度更高,请更多),然后通过以下方式将间隔的一部分作为列表
x=[a+(b-a)*k/n for k in range(n)]
。
现在,通过在此分区的每个点上评估函数来制作y坐标列表:
y=[ x[i]**4-2*x[i]**2+1 for i in range(n)]
。
最后,只需运行“ plot(x,y)”和“ plot.show()”,就可以完成。要绘制其他函数,只需更改y集生成函数中的公式即可。为了使它更通用,可以使用lambda函数。
答案 2 :(得分:0)
我知道问题是如何使用matplotlib绘制函数。但是,您可能还想看看sympy库
from sympy import symbols
from sympy.plotting import plot
x = symbols('x')
p1 = plot(x**4+2*x**2+1, show=False)
p2 = plot(x**3, show=False)
p1.append(p2[0])
p1.show()