Python函数:生动解释二维插值函数:griddata()
通常来说,一维插值有很多方法,也比较容易实现。griddata()函数则是可以方便实现二维插值。
例:图中有9个网格点,横坐标为a,纵坐标为b,蓝色的数字是这个点的函数值。
(不好意思,例子比较简单,我直接手画了)
由于整个网格由离散点组成,当我们想知道 (1.5, 1.5) 或者 (2.5, 2.5) 的坐标值的时候,是无法直接获取的,只能通过二维的插值来得到,如下图。
这个时候就可以采用griddata()函数,代码如下:
import numpy as np
from scipy.interpolate import griddataa = [1,2,3]
b = [1,2,3]
ans = [4,5,6,3,4,5,2,3,4]
A,B = np.meshgrid(a,b)
# print(A)
# print(B)
X_star = np.hstack((A.flatten()[:,None], B.flatten()[:,None]))
# print(X_star)m = [1.5,2.5]
n = [1.5,2.5]
M,N = np.meshgrid(m,n)
U = griddata(X_star, ans, (M, N), method='cubic')
print(U)
打印出U,为:
[[4.00000001 5.00000007]
[2.99999996 3.99999998]]
为了方便检验,其实例子中的函数值就是两个坐标点加一块的值。这四个坐标的正确值应该为4、5、3、4,可以看到插值的结果还挺准确的。
注意事项:此函数只能对在原本网格范围内的点进行插值,超出原本网格范围的值则会被设置为nan。
比如初始的网格是[1,2,3], [1,2,3],而我去插入 (1.5, 999) 处的值,这明显不可能,函数就直接输出nan。
Python函数:生动解释二维插值函数:griddata()相关推荐
- Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组、split函数垂直拆分二维numpy数组
Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组.split函数垂直拆分二维numpy数组 目录
- 使用Python,Opencv进行二维直方图的计算及绘制
使用Python,Opencv进行二维直方图的计算及绘制 1. 效果图 2. 源码 参考 这篇博客将介绍如何使用Python,Opencv进行二维直方图的计算及绘制(分别用Opencv和Numpy计算 ...
- python怎么画简单图片-Python绘制简易的二维图像
大家好,我是飞向天空的牛. 最近学习了一下用Python绘制简易的二维图像,代码如下图所示:绘图代码 文本如下: import matplotlib.pyplot as plt import nump ...
- python随机生成二维列表_对python产生随机的二维数组实例详解
对python产生随机的二维数组实例详解 最近找遍了python的各个函数发现无法直接生成随机的二维数组,其中包括random()相关的各种方法,都没有得到想要的结果.最后在一篇博客中受到启发,通过列 ...
- Python利用qrcode生成二维码并解析结果
使用到的库 1.qrcode 介绍:qrcode模块是Github上的一个开源项目,提供了生成二维码的接口.qrcode模块默认使用PIL库用于生成图像. 安装: pip install qrcode ...
- 如何使用Python识别图片中的二维码
如何使用Python识别图片中的二维码 二维码是一种方便快捷的信息传递方式,它们广泛应用于电子商务.广告和其他领域.在许多情况下,我们需要识别图片中的二维码,以便从中获取信息.Python是一种流行的 ...
- python一维数组和二维数组_Python numpy实现二维数组和一维数组拼接的方法
Python numpy实现二维数组和一维数组拼接的方法 撰写时间:2017.5.23 一维数组 1.numpy初始化一维数组 a = np.array([1,2,3]); print a.shape ...
- C语言:编写一个函数,计算二维数组中的最大元素,数组以指针的方式传递
/*编写一个函数,计算二维数组中的最大元素,数组以指针的方式传递*/ #include<stdio.h> #define N 4 #define M 3 int findmax(int ( ...
- python qrcode库生成二维码的代码
如下内容内容是关于python qrcode库生成二维码的内容,希望能对各位有所用. import qrcode img = qrcode.make('Some data here')高级用法impo ...
最新文章
- Scrum立会报告+燃尽图(十月二十一日总第十二次)
- 1.5 不同类型的循环网络-深度学习第五课《序列模型》-Stanford吴恩达教授
- 【通知】+ java基础提升篇:Java 序列化的高级认识
- Java里面获取当前服务器的IP地址
- live http headers_iPhone12手机Live+利用VJD2导播软件直播
- python段错误原因_python – 捕获崩溃的子进程的“分段错误”...
- 【转】Hibernate数据过滤
- 「递归」第5集 | 从网瘾少年到极客大神:没有什么是一段代码解决不了的
- html5求6的阶乘,.net 求数的阶乘
- Python 3.6学习笔记(一)
- 远程GitHub中的项目拉取到本地
- PureComponent: setState未触发render渲染
- python自动修改论文格式_如何轻轻松松修改论文格式?
- 使用lombok时,get/set方法冒红问题
- Redis-6.2.x版本官方发行说明(附谷歌翻译)【持续更新】
- Java监听mysql的binlog详解(mysql-binlog-connector)
- kali linux查看版本,kali linux 系统版本的查看方法
- lle算法c++语言,2015年计算机二级C++上机考前冲刺题(4)
- docker下安装typecho建立自己得博客系统(1)dockerfile篇
- 专业音视频播放器:Elmedia Video Player Pro mac中文版