raster rework for next course
@jorisvandenbossche , I think we should do some rework on the current state of the raster info in the repo. My proposal:
- Remove 11-numpy.ipynb. Could be an option to integrate the convolution example at the end in an advanced exercise or use-case as it is a useful GIS element
- Remove 12-rasterio.ipynb
- Combine 10-introduction-raster.ipynb, 13-xarray.ipynb & 14-xarray-intro.ipynb to have a single introduction on rasters, but using xarray and rio-xarray directly. Focus on xarray based on analogy with geopandas instead of analogy/extension of numpy ('adds context to NumPy'). Start with single data source, i.e. DataArray; add write to file example/exercise
For clarity/consistency during the course: we handle bands/channels of a single data source as a DataArray dimension (RGB,..), we handle different kinds of data (temperature, salinity,...) as DataSets. We might make a remark in the end that switching is fine.
-
15-xarray-datasets.ipynb -> rework towards DataSets containing different variables instead of the b4/b8 example; add write to file example/exercise
-
Combine 16-raster-processing.ipynb and 20-raster-vector-tools.ipynb into a single notebook on raster/vector tooling. Proposal of topics to cover: clip region (with/without buffer), conversion raster/vector, proximity (xarray-spatial ) and rasterstats; move "Cloud: only download what you need" to the 'big-data' notebook. I would add an addendum on 'calling external tools' like https://www.whiteboxgeo.com/, http://www.saga-gis.org/saga_tool_doc/2.2.7/a2z.html,...
-
21-xarray-dask-big-data.ipynb: extend with the COG-info, mention also https://geemap.org/ (requires account of google earth engine)?
-
What to use for the zonal statistics -> what about https://github.com/corteva/geocube vs https://xarray-spatial.org/user_guide/zonal.html vs rasterstats package?
Some discussion outputs:
- Argo data set is not a 'GIS raster data set', but rather a good example of the capabilities of xarray for non-raster data sets; so rather not use this for the xarray intro/advanced during course => switch argo to a case study instead (and clearly specify that it is not a typical raster GIS data set); use sst as exercis in explanation notebook together with era 5 data set.
- 15-xarray-datasets => 15-xarray-advanced with:
- time dimension with resampling option
- categorical example with groupby
- ...
- new case study with geoprocessing case study, e.g. sentinel of different moments in time; over time extraction of for example; integrate also typical gis operations
- also new case study: data-reprocessing from indiviudal .tiff/netcdf to a .zarr format of a data folder would be useful -> example data https://github.com/andrea-ballatore/open-geo-data-education/tree/main/datasets/dmsp_ols_nighttime_lights_1995_2013
new layout:
├── 00-jupyter_introduction.ipynb
├── 01-introduction-tabular-data.ipynb
├── 02-introduction-geospatial-data.ipynb
├── 03-coordinate-reference-systems.ipynb
├── 04-spatial-relationships-joins.ipynb
├── 05-spatial-operations-overlays.ipynb
├── 10-introduction-raster.ipynb
├── 11-xarray-intro.ipynb - S
├── 12-xarray-advanced.ipynb (era, sst)- S
├── 13-raster-vector-tools.ipynb- J
├── 14-combine-data.ipynb (herstappe & light as exercise)- J
├── 15-xarray-dask-big-data.ipynb
├── case-curieuzeneuzen-air-quality.ipynb
├── case-argo-sea-floats.ipynb - S
├── case-remote-sensing.ipynb - !
├── visualization-01-matplotlib.ipynb
├── visualization-02-geopandas.ipynb
├── visualization-03-cartopy.ipynb
└── visualization-04-interactive.ipynb