diff --git a/02-spatial-data.md b/02-spatial-data.md index f020d0f63..5da530274 100644 --- a/02-spatial-data.md +++ b/02-spatial-data.md @@ -882,7 +882,7 @@ To turn off S2 for the entirety of a project, you can create a file called .Rpro The spatial raster data model represents the world with the continuous grid of cells (often also called pixels; Figure \@ref(fig:raster-intro-plot):A)\index{raster data model}. This data model often refers to so-called regular grids, in which each cell has the same, constant size -- and we will focus on the regular grids in this book only. -However, several other types of grids exist, including rotated, sheared, rectilinear, and curvilinear grids (see chapter 1 of @pebesmaSpatialDataScience2023 or chapter 2 of @tennekes_elegant_2022). +However, several other types of grids exist, including rotated, sheared, rectilinear, and curvilinear grids (see chapter 1 of @pebesma_spatial_2023 or chapter 2 of @tennekes_elegant_2022). The raster data model usually consists of a raster header\index{raster!header} and a matrix (with rows and columns) representing equally spaced cells (often also called pixels; Figure \@ref(fig:raster-intro-plot):A).^[ @@ -944,7 +944,7 @@ The **terra** package mostly relies on a large number of built-in functions, whe On the other hand, **stars** uses some built-in functions (usually with names starting with `st_`), some existing **dplyr** functions (e.g., `filter()` or `slice()`), and also has its own methods for existing R functions (e.g., `split()` or `aggregate()`). Importantly, it is straightforward to convert objects from **terra** to **stars** (using `st_as_stars()`) and the other way round (using `rast()`). -We also encourage you to read @pebesmaSpatialDataScience2023 for the most comprehensive introduction to the **stars** package. +We also encourage you to read @pebesma_spatial_2023 for the most comprehensive introduction to the **stars** package. ### Introduction to terra diff --git a/03-attribute-operations.md b/03-attribute-operations.md index cbd39da1a..87eb6c208 100644 --- a/03-attribute-operations.md +++ b/03-attribute-operations.md @@ -638,7 +638,7 @@ class(world_data) ## Manipulating raster objects In contrast to the vector data model underlying simple features (which represents points, lines and polygons as discrete entities in space), raster data represent continuous surfaces. -This section shows how raster objects work by creating them *from scratch*, building on Section \@ref(an-introduction-to-terra). +This section shows how raster objects work by creating them *from scratch*, building on Section \@ref(introduction-to-terra). Because of their unique structure, subsetting and other operations on raster datasets work in a different way, as demonstrated in Section \@ref(raster-subsetting). \index{raster!manipulation} diff --git a/04-spatial-operations.md b/04-spatial-operations.md index 7fa97ae20..c68432c99 100644 --- a/04-spatial-operations.md +++ b/04-spatial-operations.md @@ -359,7 +359,7 @@ st_relate(x, y) Understanding DE-9IM strings allows new binary spatial predicates to be developed. The help page `?st_relate` contains function definitions for 'queen' and 'rook' relations in which polygons share a border or only a point, respectively. -'Queen' relations mean that 'boundary-boundary' relations (the cell in the second column and the second row in Table \@ref(tab:de9emtable), or the 5th element of the DE-9IM string) must not be empty, corresponding to the pattern `F***T****`, while for 'rook' relations, the same element must be 1 (meaning a linear intersection) (see \@ref(queens)). +'Queen' relations mean that 'boundary-boundary' relations (the cell in the second column and the second row in Table \@ref(tab:de9emtable), or the 5th element of the DE-9IM string) must not be empty, corresponding to the pattern `F***T****`, while for 'rook' relations, the same element must be 1 (meaning a linear intersection) (see Figure \@ref(fig:queens)). These are implemented as follows: diff --git a/07-reproj.md b/07-reproj.md index c449e2fab..cde74d884 100644 --- a/07-reproj.md +++ b/07-reproj.md @@ -137,7 +137,7 @@ These string representations, built on a key=value form (e.g, `+proj=longlat +da \index{CRS!proj-string} Recent PROJ versions (6+) still allow use of proj-strings to define coordinate operations, but some proj-string keys (`+nadgrids`, `+towgs84`, `+k`, `+init=epsg:`) are either no longer supported or are discouraged. Additionally, only three datums (i.e., WGS84, NAD83, and NAD27) can be directly set in proj-string. -Longer explanations of the evolution of CRS definitions and the PROJ library can be found in @bivand_progress_2021, chapter 2 of @pebesmaSpatialDataScience2023, and a [blog post by Floris Vanderhaeghe, available at inbo.github.io/tutorials/tutorials/spatial_crs_coding/](https://inbo.github.io/tutorials/tutorials/spatial_crs_coding/). +Longer explanations of the evolution of CRS definitions and the PROJ library can be found in @bivand_progress_2021, chapter 2 of @pebesma_spatial_2023, and a [blog post by Floris Vanderhaeghe, available at inbo.github.io/tutorials/tutorials/spatial_crs_coding/](https://inbo.github.io/tutorials/tutorials/spatial_crs_coding/). Also, as outlined in the [PROJ documentation](https://proj.org/development/reference/cpp/cpp_general.html) there are different versions of the WKT CRS format including WKT1 and two variants of WKT2, the latter of which (WKT2, 2018 specification) corresponds to the ISO 19111:2019 [@opengeospatialconsortium_wellknown_2019]. ## Querying and setting coordinate systems {#crs-setting} diff --git a/16-synthesis.md b/16-synthesis.md index bd57c1fe8..964b7344d 100644 --- a/16-synthesis.md +++ b/16-synthesis.md @@ -105,7 +105,7 @@ Some topics and themes appear repeatedly, with the aim of building essential ski We deliberately omitted some topics that are covered in-depth elsewhere. Statistical modeling of spatial data such as point pattern analysis\index{point pattern analysis}, spatial interpolation\index{spatial interpolation} (e.g., kriging) and spatial regression\index{spatial regression}, for example, are mentioned in the context of machine learning in Chapter \@ref(spatial-cv) but not covered in detail. -There are already excellent resources on these methods, including statistically orientated chapters in @pebesmaSpatialDataScience2023 and books on point pattern analysis [@baddeley_spatial_2015], Bayesian techniques applied to spatial data [@gomez-rubio_bayesian_2020; @moraga_spatial_2023], and books focused on particular applications such as health [@moraga_geospatial_2019] and [wildfire severity analysis](https://bookdown.org/mcwimberly/gdswr-book/application---wildfire-severity-analysis.html) [@wimberly_geographic_2023]. +There are already excellent resources on these methods, including statistically orientated chapters in @pebesma_spatial_2023 and books on point pattern analysis [@baddeley_spatial_2015], Bayesian techniques applied to spatial data [@gomez-rubio_bayesian_2020; @moraga_spatial_2023], and books focused on particular applications such as health [@moraga_geospatial_2019] and [wildfire severity analysis](https://bookdown.org/mcwimberly/gdswr-book/application---wildfire-severity-analysis.html) [@wimberly_geographic_2023]. Other topics which received limited attention were remote sensing and using R alongside (rather than as a bridge to) dedicated GIS software. There are many resources on these topics, including a [discussion on remote sensing in R](https://github.com/r-spatial/discuss/issues/56), @wegmann_remote_2016 and the GIS-related teaching materials available from [Marburg University](https://geomoer.github.io/moer-info-page/courses.html). diff --git a/404.html b/404.html index 841ca2081..c78e0087a 100644 --- a/404.html +++ b/404.html @@ -129,7 +129,7 @@

Second Edition