Извлечение данных из погодной модели гриба

Я загрузил grib1 данные модели из GFS, я использую Mac OS X и смог построить файл wgrib2 из NOAA, но не смог извлечь данные. Не нашел grib1 утилиты для MAC.

Затем бегу к этой программе http://www.giss.nasa.gov/tools/panoply/, который смог прочитать файл и просмотреть данные, но у меня с ним возникли проблемы.

  1. значения представлены в других единицах (например, K для температуры и другие, отличные от мм в осадках)
  2. Я могу экспортировать CSV, но только значения, а не координаты

Что я хочу сделать:

  1. извлекать данные из файла grib через командную строку через широту и долготу
  2. извлекать данные и переходить в MySQL базу данных, чтобы иметь возможность выполнять агрегирование данных (сумма, максимум, минимум) и т. д.
  3. иметь возможность строить / отображать данные (я бы, вероятно, использовал службу CartoDB)

Я уже могу извлечь grib или загрузить данные из определенного региона, я бы хотел, чтобы эти данные можно было видеть в электронной таблице, например, широту, долготу, температуру, количество осадков, ветер и т. Д., А затем оттуда я могу перенести их в базу данных , или sum / avg и т. д., или манипулировать данными.

Пример файла данных grib: https://dl.dropboxusercontent.com/u/104462/neavilag_rain_wind_pressure.grb

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


person neavilag    schedule 05.01.2015    source источник
comment
Под «MAC» вы имеете в виду Mac OS X? Что lat lon? Какую базу данных вы будете использовать (Oracle, PostgreSQL, Progress OpenEdge ..)? Какой язык / инструмент для построения данных вы будете использовать? Если вы ищете сценарий для преобразования данных из одного формата в другой, тогда предоставление образцов данных поможет.   -  person xmojmr    schedule 05.01.2015
comment
Привет, да, я имею в виду Mac OS X, широта - это широта, а долгота - долгота. Я хотел бы использовать mySQL, для построения, возможно, использовать службу cartodb, но может быть другой, который вы можете предложить .. Я уже могу извлечь grib или загрузить из определенного региона, я бы хотел, чтобы эти данные можно было видеть в электронной таблице, например, широта , долгота, температура, осадки, ветер и т. д. ... оттуда я могу перенести их в базу данных, или суммировать / средн. и т. д., или манипулировать данными. Может быть, вы мне подскажете, что делать. Благодарность...   -  person neavilag    schedule 06.01.2015
comment
вот ссылка на некоторые данные [ссылка] (dl.dropboxusercontent.com/u/104462 /)   -  person neavilag    schedule 06.01.2015
comment
Stack Overflow позволяет программистам задавать вопросы по программированию разумного размера и находить на них ответы. Чтобы сохранить ваш вопрос по теме, рассмотрите возможность разбиения его на более мелкие конкретные вопросы, каждый из которых помечен определенным языком программирования. Для сложной оркестровки вам, вероятно, потребуется выучить / использовать какой-нибудь дружественный для Mac язык сценариев. Также рассмотрите возможность использования сайта Geographic Information Systems Stack Exchange. У меня нет ни gis, ни macosx опыта, поэтому я больше не буду вам помогать   -  person xmojmr    schedule 06.01.2015


Ответы (2)


Я рекомендую использовать cfgrib, который представляет собой читатель grib на основе Python, основанный на проекте xarray Python и eccodes программное обеспечение от ЕЦСПП.

Он очень прост в использовании:

import cfgrib
cfgrib.open_datasets('your_grib_data.grib2')

А в xarray есть множество полезных встроенных функций. Повеселись!

person dl.meteo    schedule 03.08.2019

Если я проделываю подобные манипуляции, я обычно использую CDO, поскольку он правильно обрабатывает все виды собственных сеток. Если вы хотите вычислить сумму или среднее значение поля, например, для определенной области, неправильно просто вычислять среднее арифметическое с помощью регулярной сетки координат по широте и долготе или сокращенной сетки Гаусса, поскольку она не учитывает изменяющуюся сетку. размеры ячеек по мере продвижения к полюсам.

Поэтому я бы выбрал область с

cdo -f nc sellonlatbox,lon1,lon2,lat1,lat2 in.grb out.nc

Здесь я конвертирую в netcdf одновременно с параметром «-f nc». Многие программные пакеты легко читают netcdf для создания графиков (ncl, gdl / idl, grads, R, python, panoply и т. Д.).

Вычислить статистику полей для файлов так же просто, как

cdo fldmean in.nc out.nc
cdo fldmax in.nc out.nc
cdo fldsum in.nc out.nc 

Приведу некоторые из запрашиваемых вами примеров. Вы также можете создавать статистику во временном измерении (тиммейном и т. Д.). За подробностями обращайтесь к справочным страницам CDO. Я установил CDO на свой MAC, используя macports.

person Adrian Tompkins    schedule 04.10.2017