Данные по точкам на графике - PullRequest
0 голосов
/ 01 сентября 2018

Я отобразил одномерный набор данных NetCDF, используя Cartopy / Matplotlib, и хочу отобразить значения этих данных в определенных точках на карте (отформатированных в широте и долготе), как показано на следующем примере изображения:

Example image with data plots

Я перебрал документацию Matplotlib / Cartopy и считаю, что функция pyplot.plot - это решение. Строка кода, которую я ожидаю запустить в этом процессе, будет plt.plot (координата x, координата y, данные). Я на правильном пути, или есть более эффективное решение?

Ответы [ 2 ]

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

Обязательно ознакомьтесь с ответом Пельсона, но для краткости, да, вы можете использовать любую функцию построения графиков matplotlib, просто используйте ax.plot(...) на ручке осей ax. Обратите внимание, что вы всегда должны включать аргумент transform=cartopy.crs. ... (он является частью объекта GeoAxes ax), чтобы убедиться, что вы находитесь в правильной проекции.

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

Советую взглянуть на типы визуализации matplotlib. Существует краткий курс, который делает именно это на http://nbviewer.jupyter.org/github/SciTools/courses/blob/master/course_content/notebooks/matplotlib_intro.ipynb?create=1, который вы могли бы найти полезным.

В частности, когда дело доходит до построения точечных данных, plt.plot - хороший вариант. Когда дело доходит до лотов точечных данных, вам, вероятно, захочется взглянуть на plt.scatter.

Если вы хотите визуализировать поле данных, вам, вероятно, понадобятся plt.contourf и plt.pcolormesh для заполненных контуров и блочных графиков.

Вам также могут быть интересны инструменты, которые упрощают процесс передачи метаданных от вашего имени. XArray предоставляет удобный многомерный набор данных с гладким интерфейсом, Iris предоставляет вам модель данных на основе соглашений, которая понимает такие вещи, как системы координат и единицы измерения (раскрытие: я один из авторов ириса).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...