博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
scipy插值interpolation
阅读量:4538 次
发布时间:2019-06-08

本文共 1135 字,大约阅读时间需要 3 分钟。

>>> from scipy.interpolate import interp1d #interp1d表示1维插值
>>>
>>> x = np.linspace(0, 10, num=11, endpoint=True) >>> y = np.cos(-x**2/9.0) >>> f = interp1d(x, y) >>> f2 = interp1d(x, y, kind='cubic') #kind='cubic' 省去kind参数 默认为线性插值
>>>
>>> xnew = np.linspace(0, 10, num=41, endpoint=True) #xnew表示插值之后,画图,选取的画图点数,再用线将这些点连起来 >>> import matplotlib.pyplot as plt >>> plt.plot(x, y, 'o', xnew, f(xnew), '-', xnew, f2(xnew), '--') >>> plt.legend(['data', 'linear', 'cubic'], loc='best') >>> plt.show()
../_images/interpolate-1.png

插值的方法 通过kind 导入;

f2 = interp1d(x, y, kind='cubic') 返回一个插值后的函数
>>> from scipy.interpolate import interp1d
>>>
>>> x = np.linspace(0, 10, num=11, endpoint=True) >>> y = np.cos(-x**2/9.0) >>> f1 = interp1d(x, y, kind='nearest') >>> f2 = interp1d(x, y, kind='previous') >>> f3 = interp1d(x, y, kind='next')
>>>
>>> xnew = np.linspace(0, 10, num=1001, endpoint=True) >>> import matplotlib.pyplot as plt >>> plt.plot(x, y, 'o') >>> plt.plot(xnew, f1(xnew), '-', xnew, f2(xnew), '--', xnew, f3(xnew), ':') >>> plt.legend(['data', 'nearest', 'previous', 'next'], loc='best') >>> plt.show()
../_images/interpolate-2.png
 

转载于:https://www.cnblogs.com/ggzhangxiaochao/p/9083343.html

你可能感兴趣的文章
ExtJs总结(从其他地方找的记下来)
查看>>
Java中HashMap和TreeMap的区别深入理解
查看>>
bat 获取命令执行后的多个返回值,并取最后一个
查看>>
TensorFlow MNIST 问题解决
查看>>
C#微信开发之旅(一):前言
查看>>
C语言常用数学函数及其用法
查看>>
操作节点
查看>>
java Lambda
查看>>
saltstack远程执行之目标选择
查看>>
华为机试测试- 字符串最长的数字串
查看>>
ArrayDeque类的使用详解
查看>>
组合数据类型练习:
查看>>
JSON.parse()和JSON.stringify()
查看>>
Python中的列表
查看>>
将一个数据库中表的数据添加到另一个数据库
查看>>
C#委托的介绍(delegate、Action、Func、predicate)
查看>>
leetcode 76. Minimum Window Substring
查看>>
如何用Eclipse打jar包
查看>>
学习是一种投资
查看>>
banking
查看>>