Широта, Долгота, Z Поле в формате CSV в растровую карту - PullRequest
0 голосов
/ 08 сентября 2018
    L1            L2        L3         L4        LATITUDE   LONGITUDE
-3.627661   -16.376394  6.729712    3.592987    24.813797   -88.901495
-7.223523   -16.020485  2.175032    3.322263    24.6915     -87.84013
-7.556808   -15.840759  1.892859    2.977641    24.694245   -87.868856
-11.385272  -15.460266  9.150633    9.565245    29.965457   -87.565512
-6.31497    -15.221949  3.690079    4.606816    26.119643   -88.410623
-7.728157   -15.004622  7.65388     7.450833    29.968328   -87.596143

Из этого CSV я пытался экспортировать это в растровую карту, используя что-то вроде этого:

from scipy import interpolate

lon_list = np.arange(3, 6, 1)
lat_list = np.arange(4, 8, 1)

lon_2d, lat_2d = np.meshgrid(lon_list, lat_list)
grid_array = interpolate.griddata((array[:,-1], array[:,-2]), array[:,0],
                                  (lon_2d, lat_2d))[::-1]
print(grid_array)

>>> [[  nan  7.    6.72]
 [ 6.    5.4   5.6 ]
 [ 4.    3.8   4.  ]
 [ 2.    2.2   2.4 ]]
import matplotlib.pyplot as plt
plt.imshow(grid_array)

Однако у меня все еще есть проблемы с простым экспортом этого CSV-файла в растровую карту, например так: Примеры карт погоды

1 Ответ

0 голосов
/ 08 сентября 2018

Модуль, который вы ищете, это геопанда , который наследует многие свои классы и методы от панд .

Это позволит вам легко читать данные из вашего CSV с помощью df = pandas.read_csv("path/to/file.csv")

Вы должны быть в состоянии заполнить другие значения широты и долготы, чем вы можете интерполировать с помощью df.interpolate()

Как только вы преобразуете его в массив данных геопанды с помощью gdf = geopandas.GeoDataFrame(df), вы откроете для себя мир картографирования, такой же простой, как gdf.plot() или гораздо более сложный, в зависимости от ваших потребностей. После того, как вы позвонили, вы можете сохранить его на свой диск с помощью pyplot.savefig("path/to/raster.tiff")

Возможно, вам придется разбить этот вопрос на несколько более мелких, чтобы получить лучшую помощь по переполнению стека, но если вы посмотрите документацию, которую я связал, у вас будет гораздо лучшее представление о том, что делать дальше

...