You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 01-introduction.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -49,7 +49,7 @@ This may sound simple and easy to achieve (which it is if you carefully maintain
49
49
50
50
We define geocomputation as
51
51
52
-
> A field of research, software development and practical application that uses geographic data to solve problems, with a focus on reproducibility, flexibility and tool development.
52
+
> Academic research, software development and practical applications that use geographic data to solve problems, with a focus on reproducibility, flexibility and tool development.
53
53
54
54
Geocomputation\index{geocomputation!definition} is a young term, dating back to the first conference on the subject in 1996.^[
55
55
The first 'GeoComputation' conference took place at the University of Leeds, where one of the authors (Robin) is currently based.
The output is `routes_short`, an `sf` object representing routes on the transport network\index{network} that are suitable for cycling (according to the OSRM routing engine at least), one for each desire line.
Having created a scenario in which approximately 4000 trips have switched from driving to cycling, we can now model where this updated modeled cycling activity will take place.
<p>Before we can use GRASS GIS geoalgorithms, we also need to add data to GRASS GIS’s spatial database.
621
-
Luckily, the convenience function <code><ahref="https://rsbivand.github.io/rgrass/reference/readVECT.html">write_VECT()</a></code> does this for us.
622
-
(Use <code><ahref="https://rsbivand.github.io/rgrass/reference/readRAST.html">write_RAST()</a></code> for raster data.)
621
+
Luckily, the convenience function <code><ahref="https://rdrr.io/pkg/rgrass/man/readVECT.html">write_VECT()</a></code> does this for us.
622
+
(Use <code><ahref="https://rdrr.io/pkg/rgrass/man/readRAST.html">write_RAST()</a></code> for raster data.)
623
623
In our case, we add the street and cycle hire point data while using only the first attribute column, and name them as <code>london_streets</code> and <code>points</code> in GRASS GIS.</p>
<p>The <strong>rgrass</strong> package expects its inputs and gives its outputs as <strong>terra</strong> objects.
628
-
Therefore, we need to convert our <code>sf</code> spatial vectors to <strong>terra</strong>’s <code>SpatVector</code>s using the <code><ahref="https://rspatial.github.io/terra/reference/vect.html">vect()</a></code> function to be able to use <code><ahref="https://rsbivand.github.io/rgrass/reference/readVECT.html">write_VECT()</a></code>.<aclass="footnote-ref" tabindex="0" data-toggle="popover" data-content='<p>You can learn more how to convert between spatial classes in R by reading the (Conversions between different spatial classes in R)[<a href="https://geocompx.org/post/2021/spatial-classes-conversion/" class="uri">https://geocompx.org/post/2021/spatial-classes-conversion/</a>] blog post and the
628
+
Therefore, we need to convert our <code>sf</code> spatial vectors to <strong>terra</strong>’s <code>SpatVector</code>s using the <code><ahref="https://rspatial.github.io/terra/reference/vect.html">vect()</a></code> function to be able to use <code><ahref="https://rdrr.io/pkg/rgrass/man/readVECT.html">write_VECT()</a></code>.<aclass="footnote-ref" tabindex="0" data-toggle="popover" data-content='<p>You can learn more how to convert between spatial classes in R by reading the (Conversions between different spatial classes in R)[<a href="https://geocompx.org/post/2021/spatial-classes-conversion/" class="uri">https://geocompx.org/post/2021/spatial-classes-conversion/</a>] blog post and the
629
629
(Coercion between object formats)[<a href="https://CRAN.R-project.org/package=rgrass/vignettes/coerce.html" class="uri">https://CRAN.R-project.org/package=rgrass/vignettes/coerce.html</a>] vignette.</p>'><sup>70</sup></a></p>
630
630
<p>Now, both datasets exist in the GRASS GIS database.
631
631
To perform our network analysis, we need a topologically clean street network.
632
632
GRASS GIS’s <code>"v.clean"</code> takes care of the removal of duplicates, small angles and dangles, among others.
633
633
Here, we break lines at each intersection to ensure that the subsequent routing algorithm can actually turn right or left at an intersection, and save the output in a GRASS GIS object named <code>streets_clean</code>.</p>
<p>To see our result, we read the result into R, convert it into an <code>sf</code>-object keeping only the geometry, and visualize it with the help of the <strong>mapview</strong> package (Figure <ahref="gis.html#fig:grass-mapview">10.5</a> and Section <ahref="adv-map.html#interactive-maps">9.4</a>).</p>
Copy file name to clipboardExpand all lines: index.html
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -121,7 +121,7 @@ <h1>Welcome<a class="anchor" aria-label="anchor" href="#welcome"><i class="fas f
121
121
<p>The online version of the book is hosted at <ahref="https://r.geocompx.org">r.geocompx.org</a> and kept up-to-date by <ahref="https://github.com/geocompx/geocompr/actions">GitHub Actions</a>.
<p>This version of the book was built on GH Actions on 2024-12-26.</p>
124
+
<p>This version of the book was built on GH Actions on 2025-01-01.</p>
125
125
<p><arel="license" href="http://creativecommons.org/licenses/by-nc-nd/4.0/"><imgalt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-nd/4.0/88x31.png"></a><br>This book is licensed to you under a <arel="license" href="http://creativecommons.org/licenses/by-nc-nd/4.0/">Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License</a>.</p>
126
126
<p><arel="license" href="https://creativecommons.org/publicdomain/zero/1.0/"><imgalt="Creative Commons License" style="border-width:0" src="https://licensebuttons.net/l/zero/1.0/88x31.png"></a><br>The code samples in this book are licensed under <arel="license" href="https://creativecommons.org/publicdomain/zero/1.0/">Creative Commons CC0 1.0 Universal (CC0 1.0)</a>.</p>
0 commit comments