IDL Interpolate()函数


Interpolate()函数:可以将数组调整到同维任意大小,并支持任意定位差值。调用格式为

Interpolate(数组,X[,Y[,Z]][,关键字])

例子:

IDL> arr=findgen(2,2)
IDL> print,arr
     0.000000      1.00000
      2.00000      3.00000
IDL> ;采用线性内插方式获取数组arr中[0,0] [0.5,0.5] [1.5,1.5]位置的值
IDL> print,interpolate(arr,[0,.5,1.5],[0,.5,1.5])
     0.000000      1.50000      3.00000
IDL> ;采用线性内插方式获取数组arr中0 0.5 1.5行的值
IDL> print,interpolate(arr,[0,.5,1.5])
     0.000000      1.00000
      1.00000      2.00000
      2.00000      3.00000
IDL> ;采用网格差值方式获取数组arr中[0,0] [0.5,0.5] [1.5,1.5]位置的值
IDL> print,interpolate(arr,[0,.5,1.5],[0,.5,1.5],/grid)
     0.000000     0.500000      1.00000
      1.00000      1.50000      2.00000
      2.00000      2.50000      3.00000
IDL> ;missing为差值点坐标超出数组自身坐标范围时赋予该值
IDL> print,interpolate(arr,[0,.5,1.5],[0,.5,1.5],/grid,missing=0)
     0.000000 0.500000 0.000000
      1.00000  1.50000 0.000000
     0.000000 0.000000 0.000000

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM