[GRASS-PSC] [Motion] Approve Caitlin's student grant final report and issue the second payment

Helena Mitasova hmitaso at ncsu.edu
Tue Apr 19 15:20:21 PDT 2022


+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 <wenzeslaus at gmail.com> wrote:

> +1, Vaclav
>
> On Tue, 19 Apr 2022 at 17:17, Veronica Andreo <veroandreo at gmail.com>
> 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 <caitlin.haedrich at gmail.com>
>> Date: lun., 18 abr. 2022 19:25
>> Subject: [GRASS-dev] grass.jupyter Mini Project Final Report
>> To: <grass-dev at lists.osgeo.org>, <grass-user at lists.osgeo.org>
>>
>>
>> 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)
>> 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
>> [2]
>> https://mybinder.org/v2/gh/OSGeo/grass/main?urlpath=lab%2Ftree%2Fdoc%2Fnotebooks%2Fgrass_jupyter.ipynb
>> [3] https://grass.osgeo.org/grass81/manuals/libpython/grass.jupyter.html
>> [4]
>> https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS/MiniGrant2022
>> [5] https://github.com/OSGeo/grass/projects/7
>> _______________________________________________
>> grass-dev mailing list
>> grass-dev at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/grass-dev
>> _______________________________________________
>> grass-psc mailing list
>> grass-psc at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/grass-psc
>>
> _______________________________________________
> grass-psc mailing list
> grass-psc at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/grass-psc
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-psc/attachments/20220419/cf112447/attachment-0001.html>


More information about the grass-psc mailing list