Skip to content

Package for GIS / Earth science, e.g. coord transform, satellite utils #13

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
PeterDSteinberg opened this issue May 30, 2017 · 7 comments
Assignees
Labels

Comments

@PeterDSteinberg
Copy link
Contributor

Build a prototype showing how to coalesce the following sets of spatial utilities, such as satellite data transforms like reflectance/radiance calculations or NDVI, coordinate transformations, and regridding, broadcasting operations among rasters with grids of dif't resolutions. While prototyping / discussing, keep in mind the goal of making most or all the prototype part of Xarray, e.g. transitioning the .canvas attribute that is part of what is now Earthio.ElmStore (and the related canvas idea from datashader) to Xarray. This new prototype should avoid file loading logic, with goal of having Xarray do that (see #12 ).

Plan is for me to research some ideas on #12 over the next 2 days, then meet with @philippjfr and @jbednar later this week regarding how to address this issue in more detail, focusing on the .canvas ideas first.

@PeterDSteinberg PeterDSteinberg changed the title Create a new repo for GIS / Earth science, e.g. coord transform, satellite utils Package for GIS / Earth science, e.g. coord transform, satellite utils May 30, 2017
@PeterDSteinberg PeterDSteinberg self-assigned this May 30, 2017
@PeterDSteinberg
Copy link
Contributor Author

The package created as part of this issue should have a lean conda recipe requirements, and rely on an environment.yml file here and/or elsewhere (e.g. datashader/examples, elm/examples) to tie together the GIS tools with ML, viz, and other tools (i.e. the conda.recipe for the new package is minimal but the environment.yml file may take an install-everything-viz-GIS-ML approach).

@jbednar
Copy link
Collaborator

jbednar commented May 31, 2017

Note that HoloViews "core" is essentially this Canvas functionality already, and it has no dependencies other than Numpy and Param (which themselves have no required dependencies).
See http://holoviews.org/Tutorials/Continuous_Coordinates.html for more details.

It's possible to simply use this portion of HoloViews as-is, which (a) has the benefit of then providing visualizations for free, if other libraries are installed, and (b) has the benefit of working across many different data backends (xarray, Numpy, Pandas, etc.). The disadvantage is that it's a fairly substantial collection of code, and may not all be relevant here. A middle ground is to provide a subset of what HoloViews does using xarray, and then use those new lower-level features to implement what HoloViews does now but more simply. This is essentially how HoloViews relates to datashader; HoloViews translates its own canvas-based properties into the arguments for ds.Canvas, such that the HoloViews user does not need to care much about how datashader works but datashader does not depend on HoloViews. @philippjfr and @jlstevens can weigh in when we meet about this later this week.

@jbednar
Copy link
Collaborator

jbednar commented May 31, 2017

And we can't fail to add Hunt's suggestion for a name, corresponding to EarthIO and EarthSIm, which accurately expresses this new repo's functionality: EarthMunge. Sure, it's horrible, but it's the one to beat!

@jbednar
Copy link
Collaborator

jbednar commented Jun 1, 2017

Actually, we've now agreed that most of this functionality can go into GeoViews, preferably in a file that doesn't depend on the rest of GeoViews. If it's very specific (e.g. just for one certain satellite), it can go in EarthIO, but hopefully there won't be much of that. So, no need for EarthMunge.

@gbrener
Copy link
Contributor

gbrener commented Jun 14, 2017

@jbednar @PeterDSteinberg Are there any action items that should come out of this issue, or can we close it?

@PeterDSteinberg
Copy link
Contributor Author

@gbrener Everything has been addressed via other issues/PRs except for the question of what to do with the bokeh-geo assets. Can you figure out what to do with bokeh-geo? I think it is mainly viz stuff but may have a couple satellite utilities like radiance or reflectance. Also not sure if it is a general tool we can use or if it is more of a one-off demo of Bokeh + LANDSAT. It may be that we just move the idea of bokeh-geo to an example in datashader or elm, both of which already have LANDSAT examples, and we either add the ideas to the existing notebooks or make new notebook(s). Feel free to close this issue once another issue has been made in the right repo regarding bokeh-geo.

@gbrener
Copy link
Contributor

gbrener commented Jun 15, 2017

Ok, noted. I'll incorporate this into issue ContinuumIO/elm#175 as well (since it seems related to the examples), and return here with my findings once I get the chance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants