GRASS GIS Standardized Sample Datasets: Difference between revisions
⚠️Wenzeslaus (talk | contribs) (→Tools to help with managing a dataset: add the display Python script) |
⚠️Wenzeslaus (talk | contribs) (→References: add qgis training manual link) |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[File:Three_datasets_with_instructions.png|thumb|Example analysis in three regions with GRASS GIS commands as an example of a workflow]] | |||
With the standardized sample datasets one is able to use the same instructions, tutorials and teaching materials for different regions in the world. Using local data makes the topic personal to the audience and may enhance the learning experience. Moreover, the instructions can be written down once with the standardized name and doesn't need to be changed when we start to use some new data. This wouldn't be possible if we use names like ''dem_10m'' or ''elevation_italy'' as we would need to change the instructions when we have data with higher resolution of for smaller region. However, when using standardized names like ''elevation'' there is no need to change the instructions as long as the dataset is standardized as well. | |||
The standardized sample datasets concept defines set of basic data and names for individual maps (layers). These standardized names used throughout the instructions make the instructions independent on the particular dataset which is used. A standardized sample dataset for a given region can be used with different teaching materials which were developed following the standardized sample dataset practice. | |||
There are limits to what can be dataset independent in the instructions. For example, a setting of a computational region, specifying coordinates of a point, or providing sample results cannot be independent on given data. However, these steps can be often easily reproduced by the learner on different data especially under advise of an instructor. | |||
GRASS GIS is quite advantageous in this concept as the workflows, including most of the visualizations, can be recoded as commands. These commands can be executed in a command line but they also map one-to-one to use of graphical user interface (GUI). Moreover, the whole set of commands can be executed automatically to check that the instructions work with the given dataset. Similar principles can be applied for other packages especially when Python or R is used, although the translation to GUI is often not as smooth as in case of GRASS GIS and its command line or Python interface (or rgrass7 for that matter). Finally, even applications or courses which are using only GUI can benefit from using a standardized set of names as the sentence or screenshot containing text ''and now add the elevation layer'' will always work regardless the particular dataset used. | |||
[[File:std_dataset_nc_stripe.png|thumb|North Carolina (USA) dataset|700px]] | |||
== List of datasets == | == List of datasets == | ||
'''Already published:''' | '''Already published:''' | ||
* [http://grass.osgeo.org/download/sample-data/ North Carolina GRASS Sample Location] (map names partially standardized, content partially standardized, currently used dataset, to be deprecated) | * [http://grass.osgeo.org/download/sample-data/ North Carolina GRASS Sample Location] (2007, map names partially standardized, content partially standardized, currently used dataset, to be deprecated) | ||
* [http://geodati.fmach.it/gfoss_geodata/libro_gfoss/ Piemonte, Italy] (map names not standardized, content not standardized, | * [http://geodati.fmach.it/gfoss_geodata/libro_gfoss/ Piemonte, Italy] (2012, map names not standardized, content not standardized, see below for a new standardized version) | ||
* Spearfish, USA (to be phased out) | * Spearfish, USA (to be phased out, 1986) | ||
Planning - Future datasets | '''Planning - Future standardized datasets''' | ||
* [http://trac.osgeo.org/grass/wiki/SampleDataset GRASS GIS North Carolina USA Sample Dataset] (reference for other datasets, under development) | * [http://trac.osgeo.org/grass/wiki/SampleDataset GRASS GIS North Carolina USA Sample Dataset] (reference for other datasets, under development) | ||
* [http://trac.osgeo.org/grass/wiki/SampleDataset/Italy/ | * [http://trac.osgeo.org/grass/wiki/SampleDataset/Italy/Piemont GRASS GIS Piemonte Italy Sample Dataset] | ||
* [http://trac.osgeo.org/grass/wiki/SampleDataset/World GRASS GIS World Sample Dataset] | * [http://trac.osgeo.org/grass/wiki/SampleDataset/World GRASS GIS World Sample Dataset] | ||
Line 18: | Line 26: | ||
=== Computing slope and aspect === | === Computing slope and aspect === | ||
[[File:std_dataset_it_stripe.png|thumb|Piemonte (Italy) dataset|700px]] | |||
Compute slope, aspect and profile curvature of the terrain: | Compute slope, aspect and profile curvature of the terrain: | ||
Line 43: | Line 53: | ||
cols=574 | cols=574 | ||
--> | --> | ||
=== Visualizing shaded relief === | === Visualizing shaded relief === | ||
Line 66: | Line 71: | ||
* [http://grass.osgeo.org/grass70/manuals/ GRASS GIS manual] (currently using original, not fully compliant North Carolina GRASS Sample Location) | * [http://grass.osgeo.org/grass70/manuals/ GRASS GIS manual] (currently using original, not fully compliant North Carolina GRASS Sample Location) | ||
* [http://courses.ncsu.edu/gis582/common/ NCSU Geospatial Modeling and Analysis course] and other [http://geospatial.ncsu.edu/osgeorel/courses.html NCSU OSGeoREL courses] (currently using original, not fully compliant North Carolina GRASS Sample Location) | * [http://courses.ncsu.edu/gis582/common/ NCSU Geospatial Modeling and Analysis course] and other [http://geospatial.ncsu.edu/osgeorel/courses.html NCSU OSGeoREL courses] (currently using original, not fully compliant North Carolina GRASS Sample Location) | ||
== Internationalization == | |||
[[File:std_dataset_pr_stripe.png|thumb|Puerto Rico dataset|700px]] | |||
The basic idea of the standardized datasets is that one would be able to use the same instructions, likely series of commands in case of GRASS GIS, for different locations in the world to make it more interesting and personal to the audience. However, sometimes English names in the dataset might not be appropriate for the audience. In this case, different language versions of the dataset can be kept and maintained with the help of bulk renaming modules (see below). Providing both versions, national one and the English one, gives more options for example, the audience can use one with the provided teaching materials and the other with the generally available materials elsewhere benefiting from the familiar data. | |||
== Usages for something else than GRASS GIS == | |||
Even courses which teach GRASS GIS and some other software (for example the NCSU courses mentioned elsewhere) and courses using something else than GRASS GIS can use the concept of standardized sample dataset as the main idea is to keep given names and provide basic set of data. A script can be used to provide the dataset in different formats, e.g. GRASS Location for GRASS GIS and GeoTIFFs and SpatialLite for QGIS. GRASS GIS (GRASS Location and Mapset) is a good choice for the primary dataset as it enforces data consistency (coordinate system and topology) and has unified approach to vector, raster and 3D raster data. | |||
== Tools to help with managing a dataset == | == Tools to help with managing a dataset == | ||
[[File:std_dataset_cz_stripe.png|thumb|Czech Republic dataset|700px]] | |||
* [http://grass.osgeo.org/grass70/manuals/g.rename.html g.rename] for changing names of individual raster and vector maps | * [http://grass.osgeo.org/grass70/manuals/g.rename.html g.rename] for changing names of individual raster and vector maps | ||
* [http://grass.osgeo.org/grass70/manuals/addons/g.rename.many.html g.rename.many] for renaming large amount of maps (to standard names or to/from different language) | * [http://grass.osgeo.org/grass70/manuals/addons/g.rename.many.html g.rename.many] for renaming large amount of maps (to standard names or to/from different language) | ||
* [http://grass.osgeo.org/grass70/manuals/addons/r.in.proj.html r.in.proj] and [http://grass.osgeo.org/grass70/manuals/addons/v.in.proj.html v.in.proj] for importing data with different coordinate system | * [http://grass.osgeo.org/grass70/manuals/addons/r.in.proj.html r.in.proj] and [http://grass.osgeo.org/grass70/manuals/addons/v.in.proj.html v.in.proj] for importing data with different coordinate system | ||
* [https://trac.osgeo.org/grass/browser/grass-addons/tools/std_dataset_display.py | * Python script [https://trac.osgeo.org/grass/browser/grass-addons/tools/std_dataset_display.py std_dataset_display.py] for generating some maps and images | ||
== Improving the idea and the datasets == | |||
GRASS Trac wiki contains a page dedicated to the development of the concept of the datasets and also pages dedicated to development of the particular datasets. The main Trac wiki page for datasets is {{twiki|SampleDataset}}. If you see some issues with the data or the concept you can open a bug report or a feature request as an issue in [https://trac.osgeo.org/grass/ GRASS GIS Trac instance] with ''Component'' set to ''Datasets''. Note that you need an OSGeo userID for both Trac wiki and Trac issues. | |||
== References == | |||
* Mitasova, H., Petrasova, A., Petras V., Harmon, B., Meentemeyer R. K. ''[http://ncsu-osgeorel.github.io/foss-for-geospatial-analysis/integrating.html#/ Integrating FOSS into GIScience Curriculum & Research]''. November 11, 2015, UCGIS webinar. (Contains examples of how the standardized sample dataset for North Carolina is used at NCSU.) | |||
* Petras V., Petrasova, A., Cepero-Perez, K., Neteler, M., Delucchi, L., Landa, M., Mitasova, H. ''[http://wenzeslaus.github.io/foss-in-geospatial-science-education Using Free and Open Source Solutions in Geospatial Science Education]''. FOSS4G Europe 2015. July 16, 2015, Como, Italy. (Contains examples of the different datasets, their usage and authors.) | |||
* Petras, V., Petrasova, A., Harmon, B., Meentemeyer, R.K., Mitasova, H. ''[http://www.mdpi.com/2220-9964/4/2/942/pdf Integrating Free and Open Source Solutions into Geospatial Science Education]''. ISPRS International Journal of Geo-Information. 2015, 4, 942-956. [http://dx.doi.org/10.3390/ijgi4020942 doi:10.3390/ijgi4020942] (Contains explanation of usage of the GRASS GIS commands concept to get teaching materials which are easy to maintain.) | |||
== See also == | |||
* [http://docs.qgis.org/2.8/en/docs/training_manual/foreword/preparing_data.html QGIS Training manual] which uses similar concept and has instructions to create similar dataset to the provided one with the local geospatial data and has a script to replace some values in the teaching material itself. | |||
== Contact == | |||
If you are interested in producing and sharing a dataset for your region and you want more information, please contact [[User:Wenzeslaus|Vaclav Petras]] or ideally [https://lists.osgeo.org/mailman/listinfo/grass-user grass-user] mailing list (you must be subscribed to it to post messages). |
Latest revision as of 02:27, 13 January 2016
With the standardized sample datasets one is able to use the same instructions, tutorials and teaching materials for different regions in the world. Using local data makes the topic personal to the audience and may enhance the learning experience. Moreover, the instructions can be written down once with the standardized name and doesn't need to be changed when we start to use some new data. This wouldn't be possible if we use names like dem_10m or elevation_italy as we would need to change the instructions when we have data with higher resolution of for smaller region. However, when using standardized names like elevation there is no need to change the instructions as long as the dataset is standardized as well.
The standardized sample datasets concept defines set of basic data and names for individual maps (layers). These standardized names used throughout the instructions make the instructions independent on the particular dataset which is used. A standardized sample dataset for a given region can be used with different teaching materials which were developed following the standardized sample dataset practice.
There are limits to what can be dataset independent in the instructions. For example, a setting of a computational region, specifying coordinates of a point, or providing sample results cannot be independent on given data. However, these steps can be often easily reproduced by the learner on different data especially under advise of an instructor.
GRASS GIS is quite advantageous in this concept as the workflows, including most of the visualizations, can be recoded as commands. These commands can be executed in a command line but they also map one-to-one to use of graphical user interface (GUI). Moreover, the whole set of commands can be executed automatically to check that the instructions work with the given dataset. Similar principles can be applied for other packages especially when Python or R is used, although the translation to GUI is often not as smooth as in case of GRASS GIS and its command line or Python interface (or rgrass7 for that matter). Finally, even applications or courses which are using only GUI can benefit from using a standardized set of names as the sentence or screenshot containing text and now add the elevation layer will always work regardless the particular dataset used.
List of datasets
Already published:
- North Carolina GRASS Sample Location (2007, map names partially standardized, content partially standardized, currently used dataset, to be deprecated)
- Piemonte, Italy (2012, map names not standardized, content not standardized, see below for a new standardized version)
- Spearfish, USA (to be phased out, 1986)
Planning - Future standardized datasets
- GRASS GIS North Carolina USA Sample Dataset (reference for other datasets, under development)
- GRASS GIS Piemonte Italy Sample Dataset
- GRASS GIS World Sample Dataset
Examples
Computing slope and aspect
Compute slope, aspect and profile curvature of the terrain:
g.region raster=elevation r.slope.aspect elevation=elevation slope=slope aspect=aspect pcurvature=profile_curvature
Visualizing shaded relief
Visualize digital elevation model with shaded relief:
g.region raster=elevation r.relief input=elevation output=shade d.shade shade=shade color=elevation
-
North Carolina, USA
-
Piemonte, Italy
Where are the datasets used
- GRASS GIS manual (currently using original, not fully compliant North Carolina GRASS Sample Location)
- NCSU Geospatial Modeling and Analysis course and other NCSU OSGeoREL courses (currently using original, not fully compliant North Carolina GRASS Sample Location)
Internationalization
The basic idea of the standardized datasets is that one would be able to use the same instructions, likely series of commands in case of GRASS GIS, for different locations in the world to make it more interesting and personal to the audience. However, sometimes English names in the dataset might not be appropriate for the audience. In this case, different language versions of the dataset can be kept and maintained with the help of bulk renaming modules (see below). Providing both versions, national one and the English one, gives more options for example, the audience can use one with the provided teaching materials and the other with the generally available materials elsewhere benefiting from the familiar data.
Usages for something else than GRASS GIS
Even courses which teach GRASS GIS and some other software (for example the NCSU courses mentioned elsewhere) and courses using something else than GRASS GIS can use the concept of standardized sample dataset as the main idea is to keep given names and provide basic set of data. A script can be used to provide the dataset in different formats, e.g. GRASS Location for GRASS GIS and GeoTIFFs and SpatialLite for QGIS. GRASS GIS (GRASS Location and Mapset) is a good choice for the primary dataset as it enforces data consistency (coordinate system and topology) and has unified approach to vector, raster and 3D raster data.
Tools to help with managing a dataset
- g.rename for changing names of individual raster and vector maps
- g.rename.many for renaming large amount of maps (to standard names or to/from different language)
- r.in.proj and v.in.proj for importing data with different coordinate system
- Python script std_dataset_display.py for generating some maps and images
Improving the idea and the datasets
GRASS Trac wiki contains a page dedicated to the development of the concept of the datasets and also pages dedicated to development of the particular datasets. The main Trac wiki page for datasets is [1]. If you see some issues with the data or the concept you can open a bug report or a feature request as an issue in GRASS GIS Trac instance with Component set to Datasets. Note that you need an OSGeo userID for both Trac wiki and Trac issues.
References
- Mitasova, H., Petrasova, A., Petras V., Harmon, B., Meentemeyer R. K. Integrating FOSS into GIScience Curriculum & Research. November 11, 2015, UCGIS webinar. (Contains examples of how the standardized sample dataset for North Carolina is used at NCSU.)
- Petras V., Petrasova, A., Cepero-Perez, K., Neteler, M., Delucchi, L., Landa, M., Mitasova, H. Using Free and Open Source Solutions in Geospatial Science Education. FOSS4G Europe 2015. July 16, 2015, Como, Italy. (Contains examples of the different datasets, their usage and authors.)
- Petras, V., Petrasova, A., Harmon, B., Meentemeyer, R.K., Mitasova, H. Integrating Free and Open Source Solutions into Geospatial Science Education. ISPRS International Journal of Geo-Information. 2015, 4, 942-956. doi:10.3390/ijgi4020942 (Contains explanation of usage of the GRASS GIS commands concept to get teaching materials which are easy to maintain.)
See also
- QGIS Training manual which uses similar concept and has instructions to create similar dataset to the provided one with the local geospatial data and has a script to replace some values in the teaching material itself.
Contact
If you are interested in producing and sharing a dataset for your region and you want more information, please contact Vaclav Petras or ideally grass-user mailing list (you must be subscribed to it to post messages).