python - 如何使用 2D 数据进行 Python 插值?
问题描述
我是 Python 新手,我有一个简单的插值示例,我想使用“interpn”来解决。
x = np.linspace(0,1,4)
y = np.linspace(-1,1,5)
A = np.zeros((len(x), len(y)))
for i in range (1,len(x)):
for j in range (1,len(y)):
A[i,j] = np.sin(x[i] ** 2 + y[j] ** 2)
x1 = np.linspace(0,1,10)
y1 = np.linspace(-1,1,20)
xi,yi = np.meshgrid(x,y)
x1i,y1i = np.meshgrid(x1,y1)
int_A = interpn(xi,yi,A,x1i,y1i)
为此,我最终得到了值错误“interpn 只理解方法'linear'、'nearest'和'splinef2d'”。因此,当我将所有输入数据都设为 2D 数组时,如何使用“interpn”函数进行插值,或者在这种情况下使用任何其他 Python 插值函数?我也对使用所有输入数据和函数值都是 3D 数组进行 3D 插值感兴趣。有人可以帮我解决这些问题吗?非常感谢!
解决方案
你看过https://docs.scipy.org/doc/scipy/reference/generated/scipy.interpolate.griddata.html吗?
这应该允许您将 2D 网格作为输入。
推荐阅读
- python - 如何在 mac 上使用 anaconda 虚拟环境运行 python 脚本
- three.js - ThreeJS 错误(Three.WebGLRenderer:x.getContext 不是函数。未捕获的 TypeError:x.getContent 不是函数)
- php - 通过在mysql 查询后返回空标签,html 的大小增加了两倍| 如何解决 - laravel
- php - 带有 Intranet 应用程序的 CURL 请求
- android - 如果此版本的 firebase_auth 或其依赖项与 AndroidX 不兼容,它将破坏您的 Android 构建
- javascript - 我无法让正则表达式匹配所有字母、数字和字符。'" : - 和 / 才能正常工作
- python-3.x - 从序列号运行列表中提取连续数字及其对应值
- mysql - 如何让 MySQL Workbench 识别 MySQL 8.0?
- python - Python程序不会遍历整个输入文件
- html - 有没有办法从具有 css 的独特元素生成无限样式规则?(好像嵌套了几个伪元素)