Я пытаюсь отобразить набор данных с нерегулярной сеткой (необработанные спутниковые данные) с соответствующими широтами и долготами в набор широт и долгот с регулярной сеткой, заданный basemap.makegrid()
.Я использую matplotlib.mlab.griddata
с mpl_toolkits.natgrid
установленным.Ниже приведен список переменных, которые используются в качестве выходных данных whos
в ipython и некоторые статистические данные по переменным:
Variable Type Data/Info
-------------------------------
datalat ndarray 666x1081: 719946 elems, type `float32`, 2879784 bytes (2 Mb)
datalon ndarray 666x1081: 719946 elems, type `float32`, 2879784 bytes (2 Mb)
gridlat ndarray 1200x1000: 1200000 elems, type `float64`, 9600000 bytes (9 Mb)
gridlon ndarray 1200x1000: 1200000 elems, type `float64`, 9600000 bytes (9 Mb)
var ndarray 666x1081: 719946 elems, type `float32`, 2879784 bytes (2 Mb)
In [11]: var.min()
Out[11]: -30.0
In [12]: var.max()
Out[12]: 30.0
In [13]: datalat.min()
Out[13]: 27.339874
In [14]: datalat.max()
Out[14]: 47.05302
In [15]: datalon.min()
Out[15]: -137.55658
In [16]: datalon.max()
Out[16]: -108.41629
In [17]: gridlat.min()
Out[17]: 30.394031556984299
In [18]: gridlat.max()
Out[18]: 44.237140350357713
In [19]: gridlon.min()
Out[19]: -136.17646180595321
In [20]: gridlon.max()
Out[20]: -113.82353819404671
datalat
и datalon
- координаты оригинальных данных
gridlat
и gridlon
- это координаты для интерполяции в
var
содержит фактические данные
Использование этих переменных, когда я вызываю griddata(datalon, datalat, var, gridlon, gridlat)
, заняло целых 20минут до завершения и возвращает массив nan
.При просмотре данных широта и долгота кажутся правильными: исходные координаты перекрывают часть новой области и несколько точек данных, лежащих за пределами новой области.У кого-нибудь есть предложения?Значения наночастиц предполагают, что я делаю что-то глупое ...