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