您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python实现拉格朗日插值及作图

51自学网 2021-10-30 22:46:36
  python
这篇教程python实现拉格朗日插值及作图写得很实用,希望能帮到您。

本文实例为大家分享了python实现拉格朗日插值及作图,供大家参考,具体内容如下

python代码

import numpy as npimport matplotlib.pyplot as pltX = input("x的值:").split(' ')Y = input("y的值:").split(' ')x = input("要预测的值:")print('/n')X = np.array(X).astype(np.float64)Y = np.array(Y).astype(np.float64)x = np.array(x).astype(np.float64)n = len(X)# 原函数def fun(x): return np.sin(x)# 累乘函数def T(x, i, X): T_i = 1 for x_i in X:  if X[i] == x_i:   continue  T_i = T_i * (x-x_i) return T_i# 插值基函数def P(i, x, X, Y): P_i = T(x, i, X)/T(X[i], i, X) * Y[i] return P_i# 计算预测值def L(x, X, Y): result = 0 for i in range(n):  result = result + P(i, x, X, Y) return resulty = L(x, X, Y)   print("预测结果:" + str(y) + '/n')print("误差:" + str(fun(x) - y))# 画图X_n = np.linspace(0, 1, 50)Y_n = fun(X_n)x_n = np.linspace(0, 1, 50)y_n = L(x_n, X, Y)l1, = plt.plot(X_n, Y_n, label='theory')l2, = plt.plot(x_n, y_n, label='prediction',linestyle='--')plt.legend(handles=[l1,l2,],labels=['theory','prediction'], loc='best')plt.show()

代码测试结果(输入方式如图所示):

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持51zixue.net。


python实现批量提取指定文件夹下同类型文件
python实现多图像叠置输出
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。