import numpy.polynomial.chebyshev as chebyshev
import numpy as np
import numpy.linalg as linalg
x = np.array([1, 2, 3, 4])
y = np.array([1, 3, 5, 4])
deg = len(x) - 1
A = chebyshev.chebvander(x, deg)
print(A, "# A")
c = linalg.solve(A, y)
print(c,"# c")
for v in x:
        print( v, np.polynomial.Chebyshev(c)(v),"#p(%d)" % v)

-----------------------------------------------------------------------------------------------------------

根据输入x,拟合函数 cos(x)

import numpy.polynomial.chebyshev as chebyshev
import numpy as np
import numpy.linalg as linalg
x = np.linspace(0,1,10)
y = np.cos(x)
deg = len(x) - 1
A = chebyshev.chebvander(x, deg)
print(A, "# A")
c = linalg.solve(A, y)
print(c,"# c")
print("x值\t", "拟合的y值\t", "实际的y值\t")
for v in x:
        print( v, np.polynomial.Chebyshev(c)(v), np.cos(v))