|
1 | 1 | --- |
| 2 | +layout: page |
2 | 3 | title: "Instructor Notes" |
3 | 4 | --- |
4 | | -FIXME |
| 5 | + |
| 6 | +## Instructor notes |
| 7 | + |
| 8 | +## Lesson motivation and learning objectives |
| 9 | + |
| 10 | +This lesson is designed to introduce learners to the fundamental principles and skills for working with |
| 11 | +raster and vector geospatial data in R. It begins by introducing the structure of and simple plotting of |
| 12 | +raster data. It then covers re-projection of raster data, performing raster math, and working with multi-band |
| 13 | +raster data. After introducing raster data, the lesson moves into working with vector data. Line, point, and |
| 14 | +polygon shapefiles are included in the data. Learners will plot multiple raster and/or vector layers |
| 15 | +in a single plot, and learn how to customize plot elements such as legends and titles. They will |
| 16 | +also learn how to read data in from a csv formatted file and re-format it to a shapefile. Lastly, learners |
| 17 | +will work with multi-layered raster data set representing time series data and extract summary statistics |
| 18 | +from this data. |
| 19 | + |
| 20 | +## Lesson design |
| 21 | + |
| 22 | +#### Overall comments |
| 23 | + |
| 24 | +* As of initial release of this lesson (August 2018), the timing is set to be the same for each episode. This |
| 25 | +is very likely incorrect and will need to be updated as these lessons are taught. If you teach this lesson, |
| 26 | +please put in an issue or PR to suggest an updating timing scheme!! |
| 27 | + |
| 28 | +* The code examples presented in each episode assume that the learners still have all of the data and packages |
| 29 | +loaded from all previous episodes in this lesson. If learners close out of their R session during the breaks or |
| 30 | +at the end of the first day, they will need to either save the workspace or reload the data and packages. |
| 31 | +Because of this, it is essential that learners save their code to a script throughout the lesson. |
| 32 | + |
| 33 | +#### [Intro to Raster Data in R](../01-raster-structure/) |
| 34 | + |
| 35 | +* Be sure to introduce the datasets that will be used in this lesson. There are many data files. It may |
| 36 | +be helpful to draw a diagram on the board showing the types of data that will be plotted and analyzed |
| 37 | +throughout the lesson. |
| 38 | +* If the [Introduction to Geospatial Concepts](https://datacarpentry.org/organization-geospatial/) lesson was |
| 39 | +included in your workshop, learners will have been introduced to the GDAL library. It will be useful to make |
| 40 | +the connection back to that lesson explicitly. |
| 41 | +* If the [Introduction to R for Geospatial Data](https://datacarpentry.org/r-intro-geospatial/) lesson was included |
| 42 | +in your workshop, learners will be familiar with the idea of packages and with most of the functions used |
| 43 | +in this lesson. |
| 44 | +* The Dealing with Missing Data and Bad Data Values in Rasters sections have several plots showing alternative ways of displaying missing |
| 45 | +data. The code for generating these plots is **not** shared with the learners, as it relies on many functions |
| 46 | +they have not yet learned. For these and other plots with hidden demonstration code, show the images in the |
| 47 | +lesson page while discussing those examples. |
| 48 | +* Be sure to draw a distinction between the DTM and the DSM files, as these two datasets will be used |
| 49 | +throughout the lesson. |
| 50 | + |
| 51 | +#### [Plot Raster Data in R](../02-raster-plot/) |
| 52 | + |
| 53 | +* `geom_bar()` is a new geom for the learners. They were introduced to `geom_col()` in the [Introduction to R for Geospatial Data](https://datacarpentry.org/r-intro-geospatial/) lesson. |
| 54 | +* `dplyr` syntax should be familiar to your learners from the [Introduction to R for Geospatial Data](https://datacarpentry.org/r-intro-geospatial/) lesson. |
| 55 | +* This may be the first time learners are exposed to hex colors, so be sure to explain that concept. |
| 56 | +* Starting in this episode and continuing throughout the lesson, the `ggplot` calls can be very long. Be sure |
| 57 | +to explicitly describe each step of the function call and what it is doing for the overall plot. |
| 58 | + |
| 59 | +#### [Reproject Raster Data in R](../03-raster-reproject-in-r/) |
| 60 | + |
| 61 | +* No notes yet. Please add your tips and comments! |
| 62 | + |
| 63 | +#### [Raster Calculations in R](../04-raster-calculations-in-r/) |
| 64 | + |
| 65 | +* The `overlay()` function syntax is fairly complex compared to other function calls the learners have seen. |
| 66 | +Be sure to explain it in detail. |
| 67 | + |
| 68 | +#### [Work With Multi-Band Rasters in R](../05-raster-multi-band-in-r/) |
| 69 | + |
| 70 | +* No notes yet. Please add your tips and comments! |
| 71 | + |
| 72 | +#### [Open and Plot Shapefiles in R](../06-vector-open-shapefile-in-r/) |
| 73 | + |
| 74 | +* Learners may have heard of the `sp` package. If it comes up, explain that `sf` is a |
| 75 | +more modern update of `sp`. |
| 76 | +* There is a known bug in the `geom_sf()` function that leads to an intermittent error on some platforms. |
| 77 | +If you see the following error message, try to re-run your plotting command and it should work. |
| 78 | +The `ggplot` development team is working on fixing this bug. |
| 79 | + |
| 80 | +## Error message |
| 81 | +> ~~~ |
| 82 | +> Error in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : |
| 83 | + polygon edge not found |
| 84 | +> ~~~ |
| 85 | +> {: .error} |
| 86 | +
|
| 87 | +#### [Explore and Plot by Shapefile Attributes](../07-vector-shapefile-attributes-in-r/) |
| 88 | +
|
| 89 | +* No notes yet. Please add your tips and comments! |
| 90 | +
|
| 91 | +#### [Plot Multiple Shapefiles in R](../08-vector-plot-shapefiles-custom-legend/) |
| 92 | +
|
| 93 | +* No notes yet. Please add your tips and comments! |
| 94 | +
|
| 95 | +#### [Handling Spatial Projection & CRS in R](../09-vector-when-data-dont-line-up-crs/) |
| 96 | +
|
| 97 | +* Note that, although `ggplot` automatically reprojects vector data when plotting multiple shapefiles with |
| 98 | +different projections together, it is still important to be aware of the CRSs of your data and to keep track |
| 99 | +of how they are being transformed. |
| 100 | +
|
| 101 | +
|
| 102 | +#### [Convert from .csv to a Shapefile in R](../10-vector-csv-to-shapefile-in-r/) |
| 103 | +
|
| 104 | +* No notes yet. Please add your tips and comments! |
| 105 | +
|
| 106 | +#### [Manipulate Raster Data in R](../11-vector-raster-integration/) |
| 107 | +
|
| 108 | +* Learners have not yet been exposed to the `melt()` function in this workshop. They will need to have |
| 109 | +the syntax explained. |
| 110 | +* This is the first instance of a faceted plot in this workshop. |
| 111 | +
|
| 112 | +#### [Raster Time Series Data in R](../12-time-series-raster/) |
| 113 | +
|
| 114 | +* No notes yet. Please add your tips and comments! |
| 115 | +
|
| 116 | +#### [Create Publication-quality Graphics](../13-plot-time-series-rasters-in-r/) |
| 117 | +
|
| 118 | +* Be sure to show learners the before and after plots to motivate the complexity of the |
| 119 | +`ggplot` calls that will be used in this episode. |
| 120 | +
|
| 121 | +#### [Derive Values from Raster Time Series](../14-extract-ndvi-from-rasters-in-r/) |
| 122 | +
|
| 123 | +* This is the first time in the workshop that learners will have worked with date data. |
| 124 | +
|
| 125 | +#### Concluding remarks |
| 126 | +
|
| 127 | +* No notes yet. Please add your tips and comments! |
| 128 | +
|
| 129 | +## Technical tips and tricks |
| 130 | +
|
| 131 | +* Leave about 30 minutes at the start of each workshop and another 15 mins |
| 132 | +at the start of each session for technical difficulties like WiFi and |
| 133 | +installing things (even if you asked students to install in advance, longer if |
| 134 | +not). |
| 135 | +
|
| 136 | +* Don't worry about being correct or knowing the material back-to-front. Use |
| 137 | +mistakes as teaching moments: the most vital skill you can impart is how to |
| 138 | +debug and recover from unexpected errors. |
| 139 | +
|
| 140 | +## Common problems |
| 141 | +
|
| 142 | +TBA - Instructors please add situations you encounter here. |
5 | 143 |
|
6 | 144 | {% include links.md %} |
0 commit comments