EarthPy
EarthPy: A Python package that makes it easier to explore and plot raster and vector data using open source Python tools. - Published in JOSS (2019)
Science Score: 95.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 9 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: science.org, joss.theoj.org -
✓Committers with academic emails
14 of 38 committers (36.8%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Keywords from Contributors
Scientific Fields
Repository
A package built to support working with spatial data using open source python
Basic Info
- Host: GitHub
- Owner: earthlab
- License: bsd-3-clause
- Language: Python
- Default Branch: main
- Homepage: https://earthpy.readthedocs.io
- Size: 2.51 MB
Statistics
- Stars: 525
- Watchers: 17
- Forks: 162
- Open Issues: 42
- Releases: 11
Topics
Metadata Files
README.md
EarthPy
EarthPy makes it easier to plot and manipulate spatial data in Python.
Why EarthPy?
Python is a generic programming language designed to support many different applications. Because of this, many commonly performed spatial tasks for science including plotting and working with spatial data take many steps of code. EarthPy builds upon the functionality developed for raster data (rasterio) and vector data (geopandas) in Python and simplifies the code needed to:
- Stack and crop raster bands from data such as Landsat into an easy to use numpy array
- Work with masks to set bad pixels such a those covered by clouds and cloud-shadows to NA (
mask_pixels()) - Plot rgb (color), color infrared and other 3 band combination images (
plot_rgb()) - Plot bands of a raster quickly using
plot_bands() - Plot histograms for a set of raster files.
- Create discrete (categorical) legends
- Calculate vegetation indices such as Normalized Difference Vegetation Index (
normalized_diff()) - Create hillshade from a DEM
EarthPy also has an io module that allows users to
- Quickly access pre-created data subsets used in the earth-analytics courses hosted on www.earthdatascience.org
- Download other datasets that they may want to use in their workflows.
EarthPy's design was inspired by the raster and sp package functionality available to R users.
View Example EarthPy Applications in Our Documentation Gallery
Check out our vignette gallery for applied examples of using EarthPy in common spatial workflows.
Install
EarthPy can be installed using pip, but we strongly recommend that you install it using conda and the conda-forge channel.
Install Using Conda / conda-forge Channel (Preferred)
If you are working within an Anaconda environment, we suggest that you install EarthPy using
conda-forge
bash
$ conda install -c conda-forge earthpy
Note: if you want to set conda-forge as your default conda channel, you can use the following install workflow. We recommmend this approach. Once you have run conda config, you can install earthpy without specifying a channel.
bash
$ conda config --add channels conda-forge
$ conda install earthpy
Install via Pip
We strongly suggest that you install EarthPy using conda-forge given pip can be more prone to spatial library dependency conflicts. However, you can install earthpy using pip.
To install EarthPy via pip use:
bash
$ pip install --upgrade earthpy
Once you have successfully installed EarthPy, you can import it into Python.
```python
import earthpy.plot as ep ```
Below is a quick example of plotting multiple bands in a numpy array format.
```python
arr = np.random.randint(4, size=(3, 5, 5)) ep.plot_bands(arr, titles=["Band 1", "Band 2", "Band 3"]) plt.show() ```
Active Maintainers
We welcome contributions to EarthPy. Below are the current active package maintainers. Please see our contributors file for a complete list of all of our contributors.
Contributors
We've welcome any and all contributions. Below are some of the contributors to EarthPy. We are currently trying to update this list!!
How to Contribute
We welcome contributions to EarthPy! Please be sure to check out our contributing guidelines for more information about submitting pull requests or changes to EarthPy.
License & Citation
Citation Information
When citing EarthPy, please cite our JOSS paper:
``` @article{Wasser2019EarthPy, journal = {Journal of Open Source Software}, doi = {10.21105/joss.01886}, issn = {2475-9066}, number = {43}, publisher = {The Open Journal}, title = {EarthPy: A Python package that makes it easier to explore and plot raster and vector data using open source Python tools.}, url = {https://doi.org/10.21105/joss.01886}, volume = {4}, author = {Wasser, Leah and Joseph, Maxwell and McGlinchy, Joe and Palomino, Jenny and Korinek, Nathan and Holdgraf, Chris and Head, Tim}, pages = {1886}, date = {2019-11-13}, year = {2019}, month = {11}, day = {13}, }
```
Owner
- Name: Earth Lab
- Login: earthlab
- Kind: organization
- Location: Boulder, Colorado, USA
- Website: https://www.earthdatascience.org/
- Twitter: EarthLabCU
- Repositories: 58
- Profile: https://github.com/earthlab
Capitalizing on the data deluge to accelerate science
JOSS Publication
EarthPy: A Python package that makes it easier to explore and plot raster and vector data using open source Python tools.
Authors
Tags
gis raster data vector data remote sensingPapers & Mentions
Total mentions: 1
Sex-specific spatial use of the winter foraging areas by Magellanic penguins and assessment of potential conflicts with fisheries during winter dispersal
- DOI: 10.1371/journal.pone.0256339
- OpenAlex ID: https://openalex.org/W3193619744
- Published: August 2021
GitHub Events
Total
- Watch event: 20
- Delete event: 1
- Push event: 25
- Pull request event: 4
- Fork event: 1
Last Year
- Watch event: 20
- Delete event: 1
- Push event: 25
- Pull request event: 4
- Fork event: 1
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Leah Wasser | l****r@c****u | 443 |
| Nathan Korinek | n****0@c****u | 126 |
| pyup-bot | g****t@p****o | 108 |
| Max Joseph | m****h@g****m | 87 |
| Elsa Culler | e****r@g****m | 50 |
| jlpalomino | j****o@c****u | 44 |
| joemcglinchy | j****y@c****u | 26 |
| Joseph McGlinchy | j****7@c****u | 14 |
| Tim Head | b****m@g****m | 7 |
| Michelle Roby | 4****3 | 4 |
| Leah Wasser | l****r@c****u | 3 |
| Molly Graber | m****r@m****m | 3 |
| windnage | w****e@h****m | 3 |
| Sean Gillies | s****s@g****m | 2 |
| Andy Keeton | a****4@c****u | 2 |
| Leah Wasser | l****r@C****l | 2 |
| tkarfs1 | t****s@T****l | 2 |
| Arfon Smith | a****n | 1 |
| Brendan McAndrew | 1****r | 1 |
| Caitlin Mc Shane | 4****c | 1 |
| Carmela Stuart | c****t@c****m | 1 |
| DC Slagel | d****s@m****g | 1 |
| wwicherski | w****6@c****u | 1 |
| mirob9363 | m****3@c****u | 1 |
| martham93 | m****y@b****u | 1 |
| aefitts | a****2@c****u | 1 |
| FaranIdo | I****n@g****m | 1 |
| Jennifer Jensen | 4****0 | 1 |
| Leonardo Uieda | l****a@g****m | 1 |
| Meghan | 3****2 | 1 |
| and 8 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 11
- Total pull requests: 176
- Average time to close issues: 5 months
- Average time to close pull requests: 29 days
- Total issue authors: 9
- Total pull request authors: 4
- Average comments per issue: 1.64
- Average comments per pull request: 1.78
- Merged pull requests: 20
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 2
- Pull requests: 4
- Average time to close issues: N/A
- Average time to close pull requests: 1 minute
- Issue authors: 2
- Pull request authors: 1
- Average comments per issue: 0.5
- Average comments per pull request: 0.0
- Merged pull requests: 4
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- eculler (2)
- nkorinek (2)
- GKG1312 (1)
- kstueb (1)
- spasquet (1)
- musicinmybrain (1)
- allisonw5 (1)
- thierry-FreeBSD (1)
- ahasha (1)
Pull Request Authors
- pyup-bot (184)
- eculler (6)
- nkorinek (4)
- sophiahorigan (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 3
-
Total downloads:
- pypi 15,892 last-month
- Total docker downloads: 1,883
-
Total dependent packages: 18
(may contain duplicates) -
Total dependent repositories: 148
(may contain duplicates) - Total versions: 62
- Total maintainers: 3
pypi.org: earthpy
A set of helper functions to make working with spatial data in open source tools easier. This package is maintained by Earth Lab and was originally designed to support the earth analytics education program.
- Homepage: https://github.com/earthlab/earthpy
- Documentation: https://earthpy.readthedocs.io/
- License: BSD License
-
Latest release: 0.9.4
published about 4 years ago
Rankings
proxy.golang.org: github.com/earthlab/earthpy
- Documentation: https://pkg.go.dev/github.com/earthlab/earthpy#section-documentation
- License: bsd-3-clause
-
Latest release: v0.10.0
published 7 months ago
Rankings
conda-forge.org: earthpy
A set of helper functions to make working with spatial data in open source tools easier. This package is maintained by Earth Lab and was originally designed to support the earth analytics education program.
- Homepage: http://github.com/earthlab/earthpy
- License: BSD-3-Clause
-
Latest release: 0.9.4
published about 4 years ago
Rankings
Dependencies
- actions/checkout master composite
- actions/setup-python master composite
- codecov/codecov-action v1.0.5 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2 composite
- bump2version ==1.0.1 development
- codecov ==2.1.12 development
- importlib-metadata ==4.10.0 development
- pip >=19.0 development
- pre-commit ==2.15.0 development
- pytest ==6.2.5 development
- pytest-cov ==3.0.0 development
- pytest-vcr ==1.0.2 development
- sphinx ==4.3.2 development
- sphinx-autobuild ==2021.3.14 development
- sphinx_gallery ==0.10.1 development
- sphinx_rtd_theme ==1.0.0 development
- tox ==3.24.4 development
- geopandas *
- matplotlib >=2.0.0
- numpy >=1.14.0
- rasterio *
- requests *
- scikit-image *
