+1 Anna On Tue, Apr 19, 2022 at 6:42 PM Michael Barton <[email protected]> wrote:
> +1 Michael > _____________________________ > > C. Michael Barton > Associate Director, School of Complex Adaptive Systems ( > https://scas.asu.edu) > Professor, School of Human Evolution & Social Change ( > https://shesc.asu.edu) > Director, Center for Social Dynamics & Complexity ( > https://complexity.asu.edu) > Arizona State University > Tempe, AZ 85287-2701 > USA > > Executive Director, Open Modeling Foundation ( > https://openmodelingfoundation.github.io) > Director, Network for Computational Modeling in Social & Ecological > Sciences (https://comses.net) > > personal website: http://www.public.asu.edu/~cmbarton > > > On Apr 19, 2022, at 3:20 PM, Helena Mitasova via grass-psc < > [email protected]> wrote: > > +1 Helena > Helena Mitasova > Professor, Department of Marine, Earth and Atmospheric Sciences > Faculty Fellow, Center for Geospatial Analytics > North Carolina State University > Raleigh, NC 27695-8208 > > > On Tue, Apr 19, 2022 at 5:25 PM Vaclav Petras <[email protected]> > wrote: > >> +1, Vaclav >> >> On Tue, 19 Apr 2022 at 17:17, Veronica Andreo <[email protected]> >> wrote: >> >>> Dear PSC, >>> >>> Caitlin has just completed her project for the student grant and >>> submitted the final report (I FWD it here in case you missed it). >>> >>> I hereby propose to approve her final report and issue the second half >>> of the payment. Big thanks to Caitlin and her mentors for your work and >>> commitment! Thanks as well to those testing and providing feedback along >>> the process! Great work Caitlin!! Congratulations! >>> >>> I start with my +1 !! >>> >>> Vero >>> >>> ---------- Forwarded message --------- >>> De: Caitlin Haedrich <[email protected]> >>> Date: lun., 18 abr. 2022 19:25 >>> Subject: [GRASS-dev] grass.jupyter Mini Project Final Report >>> To: <[email protected]>, <[email protected]> >>> >>> >>> Hi all, >>> >>> Last week, we wrapped a final push on grass.jupyter and are excited for >>> its official release with GRASS 8.2. Here's my final report along with a >>> summary of grass.jupyter changes introduced as part of the project. Thank >>> you all for your support, feedback and testing over the past few months! >>> >>> *The state of the art BEFORE the start of the Mini Project:* >>> During GSoC 2021, we created “grass.jupyter”, a package that improves >>> the integration of GRASS GIS and Jupyter with a set of functions for >>> displaying GRASS data in Jupyter Notebooks. In its previous state, >>> “grass.jupyter” allows users to create static visuals and simple >>> interactive maps. However, several additional features are needed to allow >>> Jupyter users to fully and easily access the power GRASS, including >>> space-time dataset visualization and more options for interactive mapping. >>> >>> *Project Goals*: >>> In preparation for the stable release of grass.jupyter with GRASS 8.2, >>> this project had three main goals: (1) create space time dataset >>> visualizations for use in Jupyter Notebooks, (2) improve the integration of >>> GRASS with folium (leaflet library for Python) and (3) write a function for >>> displaying vector attributes in nicely-formatted tables (using Pandas or >>> Geopandas). Along the way, we also wanted to finalize the naming of >>> grass.jupyter classes and create documentation (thank you Vaclav Petras). >>> >>> *The state of the art AFTER the Mini Project:* >>> 1. New TimeSeriesMap class that creates ipywidget time sliders of space >>> time datasets (see attached timeseriesmap.png) and a notebook documenting >>> it's usage [1] >>> 2. Improved GRASS-folium integration allowing rasters and vectors to be >>> added to existing folium maps (see attached grass-folium.png) and updated >>> notebook demonstrating its usage [2] >>> 3. Updated class names: >>> >>> - GrassRenderer -> Map >>> - Grass3dRenderer -> Map3D >>> - InteractiveMap >>> - TimeSeries -> TimeSeriesMap >>> >>> 4. Thanks to Vaclav Petras, we also have a manual page for grass.jupyter >>> [3] >>> 5. I didn't end up working to integrate GRASS and Pandas. It seems that >>> it is quite straightforward to display vector attributes in >>> nicely-formatted Pandas tables. For example: >>> >>> >>> import pandas as pd >>> >>> >>> import sqlite3 >>> >>> sql_path = gs.read_command("db.databases", >>> driver="sqlite").replace('\n', '') >>> >>> con = sqlite3.connect(sql_path) >>> >>> sql_stat="SELECT * FROM field" >>> >>> df = pd.read_sql_query(sql_stat, con) >>> >>> >>> con.close() >>> >>> df >>> >>> There are other outputs that would be nice to display in nice Pandas >>> tables, like text output from r.univar, r.stats, or t.vect.list. However, >>> this is difficult since there is no standard output that is easily >>> parse-able to pandas. I think the best way would be to create a standard >>> json or csv output for all modules that return text. Then, it would be >>> simple to take any module output and convert to a nice-looking Pandas table. >>> >>> *Next Steps:* >>> 1. Bug: InteractiveMap does not honor use_region=True for vectors. >>> 2. Bug: InteractiveMap for Jupyter does not handle not existing data >>> properly (https://github.com/OSGeo/grass/issues/2302 >>> <https://urldefense.com/v3/__https://github.com/OSGeo/grass/issues/2302__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adUtsw5WY$> >>> ) >>> 3. InteractiveMap: add legend options for rasters, support simpleCRS for >>> faster rendering, ToolTip integration for vector attributes >>> 4. Continue Pandas integration by adding standard json or csv output to >>> modules that return text >>> 5. ... And many others! I think there's still lots of ways we can >>> improve and expand the integration of GRASS and Jupyter. Ideas welcome. >>> >>> You can find an archive of all my weekly reports at [4] and follow next >>> steps for grass.jupyter on our project page on GitHub [5]. Thank you again >>> to Vaclav Petras and Anna Petrasova for their guidance and contributions to >>> grass.jupyter. And, another thank you to Vero Andreo, Stefan Blumentrath >>> and Markus Neteler for their feedback and testing! >>> >>> Best, >>> Caitlin >>> >>> [1] >>> https://mybinder.org/v2/gh/OSGeo/grass/main?urlpath=lab%2Ftree%2Fdoc%2Fnotebooks%2Ftemporal.ipynb >>> <https://urldefense.com/v3/__https://mybinder.org/v2/gh/OSGeo/grass/main?urlpath=lab*2Ftree*2Fdoc*2Fnotebooks*2Ftemporal.ipynb__;JSUlJQ!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adprRiMPc$> >>> [2] >>> https://mybinder.org/v2/gh/OSGeo/grass/main?urlpath=lab%2Ftree%2Fdoc%2Fnotebooks%2Fgrass_jupyter.ipynb >>> <https://urldefense.com/v3/__https://mybinder.org/v2/gh/OSGeo/grass/main?urlpath=lab*2Ftree*2Fdoc*2Fnotebooks*2Fgrass_jupyter.ipynb__;JSUlJQ!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adRk6yl2Q$> >>> [3] https://grass.osgeo.org/grass81/manuals/libpython/grass.jupyter.html >>> <https://urldefense.com/v3/__https://grass.osgeo.org/grass81/manuals/libpython/grass.jupyter.html__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adpmpuH4w$> >>> [4] >>> https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS/MiniGrant2022 >>> <https://urldefense.com/v3/__https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS/MiniGrant2022__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0ad6AgVJHI$> >>> [5] https://github.com/OSGeo/grass/projects/7 >>> <https://urldefense.com/v3/__https://github.com/OSGeo/grass/projects/7__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0ad5RqNnz4$> >>> _______________________________________________ >>> grass-dev mailing list >>> [email protected] >>> https://lists.osgeo.org/mailman/listinfo/grass-dev >>> <https://urldefense.com/v3/__https://lists.osgeo.org/mailman/listinfo/grass-dev__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0ad4KaWWAc$> >>> _______________________________________________ >>> grass-psc mailing list >>> [email protected] >>> https://lists.osgeo.org/mailman/listinfo/grass-psc >>> <https://urldefense.com/v3/__https://lists.osgeo.org/mailman/listinfo/grass-psc__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adSHlKPSg$> >>> >> _______________________________________________ >> grass-psc mailing list >> [email protected] >> https://lists.osgeo.org/mailman/listinfo/grass-psc >> <https://urldefense.com/v3/__https://lists.osgeo.org/mailman/listinfo/grass-psc__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adSHlKPSg$> >> > _______________________________________________ > grass-psc mailing list > [email protected] > > https://urldefense.com/v3/__https://lists.osgeo.org/mailman/listinfo/grass-psc__;!!IKRxdwAv5BmarQ!O6p_95e3SKYK5mKOIkmws-FQ3JJ3WRTZefvkke9v6p7LEJ21bU3fwxtja0adSHlKPSg$ > > > _______________________________________________ > grass-psc mailing list > [email protected] > https://lists.osgeo.org/mailman/listinfo/grass-psc >
_______________________________________________ grass-psc mailing list [email protected] https://lists.osgeo.org/mailman/listinfo/grass-psc
