笛卡尔到极坐标插值和绘图python

时间:2016-08-06 16:11:09

标签: python python-3.x scipy

我是业余Python用户,所以请耐心等待。我目前有一个200x200的雷达反射率值阵列,其尺寸对应于x和y值(km)的1d阵列,范围从-180到180.我的目标是执行圆柱/极坐标插值关于这些数据,我可以适当地创建一个极地情节。

我已经完成了以下操作,但由于某些奇怪的原因, griddata()不返回任何值,我不确定原因。如果有人有任何建议,我将不胜感激。

data = [nan, nan, nan,...    
        10.1, 10.5, nan,..] # 200x200 array

x = [-180, -160,...160,180] # 200 x 1 array
y = [-180, -160,...160,180] # 200 x 1 array

"""create arrays of radius and theta"""
r = np.linspace(0,150,100)
theta = np.linspace(0,360,100)

""" convert r and theta to Cartesian points"""
x = r*np.cos(theta*(math.pi/180))
y = r*np.sin(theta*(math.pi/180))

import scipy as sc
from scipy import interpolate
from scipy.interpolate import griddata

"""cylindrical interpolation"""
data_cylin = griddata((x_km, y_km), dbz_2km_2052t,(x,y), method='linear',fill_value=0)

返回

data_cylin = [0.0, 0.0...0.0]. 

我还尝试创建一个r和theta的网格网格以用于插值,但这只会为无法创建极坐标图的数据创建一个3D数组。

再次感谢您的时间!

0 个答案:

没有答案