Giter Site home page Giter Site logo

agu2021's Introduction

PyGMT: An open-source Python library for geospatial processing, analysis, and visualization

2021 AGU Fall Meeting Presentation about PyGMT

Info
Session IN55C - Open-Source Software, Notebooks, and FAIR Software I eLightning
Abstract IN55C-08
Authors Max Jones, Michael Grund, William Schlitzer, Wei Ji Leong, Dongdong Tian, Jiayuan Yao, Leonardo Uieda
When Friday, 17 December 2021 16:21 - 16:24 CST (UTC-6)
Where AGU Conference Online Session
Poster iPoster platform
Launch Binder

Abstract

PyGMT is an open-source Python package for geospatial data processing, analysis, and visualization. PyGMT is designed to integrate smoothly with scientific Python packages (e.g., NumPy, pandas, xarray, GeoPandas), support rich display in Jupyter notebooks, and improve access to the Generic Mapping Tools (GMT) by providing a user-friendly interface to the GMT C API. Here, we showcase PyGMT’s strengths in supporting Findable, Accessible, Interoperable, and Reusable (FAIR) workflows for processing geospatial data and producing publication quality maps and figures. We provide an overview of the features available in PyGMT, including plotting methods, operations on tabular data (e.g., data gridding), and operations on grids (e.g., grid filtering) as well as outline PyGMT’s development process, including testing, versioning, and archival. We will use an online notebook to share a few common use-cases for PyGMT, including gridding geospatial tabular data, plotting the gridded data using one of 30+ map projections with GMT’s fast generation of a directional gradient grid for illumination, and adding map embellishments such as insets, scale bars, and legends. The growing PyGMT team strives to nurture a welcoming community that supports and values contributions of all forms, including documentation, code, teaching, helping newcomers, and outreach. We will discuss PyGMT’s approach to fostering our community and our future plans, including simplifying the syntax, improving the integration with ObsPy, and supporting animations.

Plain-language summary

Processing and plotting spatial data are essential tasks across many scientific disciplines. PyGMT is a Python package designed to help scientists accomplish these tasks. PyGMT provides a Python interface to the Generic Mapping Tools (GMT) software, which is a command line toolbox for processing data, generating publication-quality figures, and making animations. PyGMT is able to support a remarkable number of features by leveraging GMT’s 30+ years of continuous development. At the same time, PyGMT brings a fresh perspective to GMT by following the guiding principles of the Python language, supporting interactive computing, and allowing access to GMT’s features while using other popular Python packages, such as xarray, pandas, and NumPy.

License

Creative Commons License This work is licensed under a Creative Commons Attribution 4.0 International License.

Acknowledgements

The development of PyGMT has been supported by NSF grants OCE-1558403 and EAR-1948603. M.R. Jones has been supported by EAR-1948602. PyGMT has benefited from the contributions of numerous developers and community members.

agu2021's People

Contributors

maxrjones avatar

Stargazers

none avatar Sean Ho avatar Michael Grund avatar  avatar  avatar Gin avatar Wei Ji avatar Will Schlitzer avatar Leonardo Uieda avatar Liam Toney avatar

Watchers

 avatar

Forkers

devthom-studios

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.