Skip to main content

Processing and gridding spatial data

Project description

.. image:: https://github.com/fatiando/verde/raw/master/doc/_static/readme-banner.png
:alt: Verde

`Documentation <http://www.fatiando.org/verde>`__ |
`Documentation (dev version) <http://www.fatiando.org/verde/dev>`__ |
`Contact <https://gitter.im/fatiando/fatiando>`__ |
Part of the `Fatiando a Terra <https://www.fatiando.org>`__ project


.. image:: http://img.shields.io/pypi/v/verde.svg?style=flat-square
:alt: Latest version on PyPI
:target: https://pypi-hypernode.com/pypi/verde
.. image:: http://img.shields.io/travis/fatiando/verde/master.svg?style=flat-square&label=Linux|Mac
:alt: TravisCI build status
:target: https://travis-ci.org/fatiando/verde
.. image:: http://img.shields.io/appveyor/ci/fatiando/verde/master.svg?style=flat-square&label=Windows
:alt: AppVeyor build status
:target: https://ci.appveyor.com/project/fatiando/verde
.. image:: https://img.shields.io/codecov/c/github/fatiando/verde/master.svg?style=flat-square
:alt: Test coverage status
:target: https://codecov.io/gh/fatiando/verde
.. image:: https://img.shields.io/codeclimate/maintainability/fatiando/verde.svg?style=flat-square
:alt: Code quality status
:target: https://codeclimate.com/github/fatiando/verde
.. image:: https://img.shields.io/codacy/grade/6b698defc0df47288a634930d41a9d65.svg?style=flat-square&label=codacy
:alt: Code quality grade on codacy
:target: https://www.codacy.com/app/leouieda/verde
.. image:: https://img.shields.io/pypi/pyversions/verde.svg?style=flat-square
:alt: Compatible Python versions.
:target: https://pypi-hypernode.com/pypi/verde
.. image:: https://img.shields.io/gitter/room/fatiando/fatiando.svg?style=flat-square
:alt: Chat room on Gitter
:target: https://gitter.im/fatiando/fatiando


.. placeholder-for-doc-index


About
-----

Verde is a Python library for processing spatial data (bathymetry, geophysics
surveys, etc) and interpolating it on regular grids (i.e., *gridding*).

Most gridding methods in Verde use a Green's functions approach.
A linear model is estimated based on the input data and then used to predict
data on a regular grid (or in a scatter, a profile, as derivatives).
The models are Green's functions from (mostly) elastic deformation theory.
This approach is very similar to *machine learning* so we implement gridder
classes that are similar to `scikit-learn <http://scikit-learn.org/>`__
regression classes.
The API is not 100% compatible but it should look familiar to those with some
scikit-learn experience.

Advantages of using Green's functions include:

* Easily apply **weights** to data points. This is a linear least-squares
problem.
* Perform **model selection** using established machine learning techniques,
like k-fold or holdout cross-validation.
* The estimated model can be **easily stored** for later use, like
spherical-harmonic coefficients are used in gravimetry.

The main disadvantage is the heavy memory and processing time requirement (it's a linear
regression problem). So it's not recommended for gridding large datasets (> 10,000
points), though it will depend on how much RAM you have available.


Project goals
-------------

* Provide a machine-learning inspired interface for gridding spatial data
* Integration with the Scipy stack: numpy, pandas, scikit-learn, and xarray
* Include common processing and data preparation tasks, like blocked means and 2D trends
* Support for gridding scalar and vector data (like wind speed or GPS velocities)
* Support for both Cartesian and geographic coordinates

The first release of Verde was focused on meeting these initial goals and establishing
the look and feel of the library. Later releases will focus on expanding the range of
gridders available, optimizing the code, and improving algorithms so that
larger-than-memory datasets can also be supported.


Contacting us
-------------

* Most discussion happens `on Github <https://github.com/fatiando/verde>`__.
Feel free to `open an issue
<https://github.com/fatiando/verde/issues/new>`__ or comment
on any open issue or pull request.
* We have `chat room on Gitter <https://gitter.im/fatiando/fatiando>`__
where you can ask questions and leave comments.


Citing Verde
------------

This is research software **made by scientists**. Citations help us justify the effort
that goes into building and maintaining this project. If you used Verde for your
research, please consider citing us.

See our `CITATION.rst file <https://github.com/fatiando/verde/blob/master/CITATION.rst>`__
to find out more.


Contributing
------------

Code of conduct
+++++++++++++++

Please note that this project is released with a
`Contributor Code of Conduct <https://github.com/fatiando/verde/blob/master/CODE_OF_CONDUCT.md>`__.
By participating in this project you agree to abide by its terms.

Contributing Guidelines
+++++++++++++++++++++++

Please read our
`Contributing Guide <https://github.com/fatiando/verde/blob/master/CONTRIBUTING.md>`__
to see how you can help and give feedback.

Imposter syndrome disclaimer
++++++++++++++++++++++++++++

**We want your help.** No, really.

There may be a little voice inside your head that is telling you that you're
not ready to be an open source contributor; that your skills aren't nearly good
enough to contribute.
What could you possibly offer?

We assure you that the little voice in your head is wrong.

**Being a contributor doesn't just mean writing code**.
Equality important contributions include:
writing or proof-reading documentation, suggesting or implementing tests, or
even giving feedback about the project (including giving feedback about the
contribution process).
If you're coming to the project with fresh eyes, you might see the errors and
assumptions that seasoned contributors have glossed over.
If you can write any code at all, you can contribute code to open source.
We are constantly trying out new skills, making mistakes, and learning from
those mistakes.
That's how we all improve and we are happy to help others learn.

*This disclaimer was adapted from the*
`MetPy project <https://github.com/Unidata/MetPy>`__.


License
-------

This is free software: you can redistribute it and/or modify it under the terms
of the **BSD 3-clause License**. A copy of this license is provided in
`LICENSE.txt <https://github.com/fatiando/verde/blob/master/LICENSE.txt>`__.


Documentation for other versions
--------------------------------

* `Development <http://www.fatiando.org/verde/dev>`__ (reflects the *master* branch on
Github)
* `Latest release <http://www.fatiando.org/verde/latest>`__
* `v1.0.0 <http://www.fatiando.org/verde/v1.0.0>`__


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

verde-1.0.0rc1.tar.gz (140.5 kB view details)

Uploaded Source

Built Distribution

verde-1.0.0rc1-py3-none-any.whl (129.6 kB view details)

Uploaded Python 3

File details

Details for the file verde-1.0.0rc1.tar.gz.

File metadata

  • Download URL: verde-1.0.0rc1.tar.gz
  • Upload date:
  • Size: 140.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for verde-1.0.0rc1.tar.gz
Algorithm Hash digest
SHA256 b5609de1263490911282eaa822f5080464ae0aa0f674b94604bb6200dbdd681c
MD5 3944867891a30341151cf1f31283e37c
BLAKE2b-256 ec6574bb9ecb3707709e97a118e8ca2ba7d3803f9119fdfb3416b8db849c77a7

See more details on using hashes here.

File details

Details for the file verde-1.0.0rc1-py3-none-any.whl.

File metadata

  • Download URL: verde-1.0.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 129.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for verde-1.0.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 e0bebbc7368fe9affc7944e6a32524c6be5b746a0a6ca5d425d84c075e7bfc90
MD5 8e177b5d33a9032c8847d2355f693d8a
BLAKE2b-256 6156236ba10aa7e67234fc09d7bc9b547c9b8efda611574daab8c07f46ac051d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page