Skip to content

Commit 0ab3715

Browse files
committed
docs: address modification suggested in openjournals/joss-reviews#4574 (comment)
1 parent 9a14ffb commit 0ab3715

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

paper.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,10 @@ An instance of OSRM can be installed on a local or remote server, allowing free
3434
# Statement of need
3535

3636
Distance based computations and models are at the core of many spatial analysis operations in various scientific fields.
37-
The simplest distance metric is the Euclidean distance (or distance as the crow flies) which is easy and inexpensive to compute. The use of this simple metric may be well fitted to study some phenomenon, such as species distribution or pollution diffusion.
37+
The simplest distance metric is the Euclidean distance (or distance as the crow flies) which is easy and inexpensive to compute. The use of this simple metric may be well suited to study some phenomenon, such as species distribution or pollution diffusion.
3838
But whenever research aims at studying human activities (transport of persons or goods for example) it is common to use more realistic metrics based on road distance or travel time.
3939

40-
To compute these metrics with R one has to use packages that interfaces routing engines. Most routing engines are commercial, use tokens to limit the number of requests, or heavily restrict the usage of derived datasets.
40+
To compute these metrics with R one has to use packages that interface routing engines. Most routing engines are commercial, use tokens to limit the number of requests, or heavily restrict the usage of derived datasets.
4141
The use of open source software based on open source data enables a high level of transparency useful to research works that aim at reproducibility.
4242

4343
We argue that `osrm` offers such a level of transparency by relying on the open source software OSRM, which itself uses the open data source OSM.
@@ -56,12 +56,12 @@ The use of `osrm` is also suggested by the package for sustainable transport pla
5656

5757
# State of the field
5858

59-
Several packages exist to compute routes, trips or distance matrices. Most of them rely on commercial and non-free software and use non-free data. See for example `hereR` [@hereR] that uses here services, `gmapsdistance` [@gmapsdistance], `googleway` [@googleway] and `mapsapi` [@mapsapi] that use Google Maps Platform or `mapboxapi` [@mapboxapi] that relies on Mapbox. Using these packages imposes many restrictions on data extraction, analysis and sharing. Other packages use open source routing engines and open data: `graphhopper` [@graphhopper] uses GraphHopper, `opentripplanner` [@openttripplanner] uses OpenTripPlanner, `valhallr` [@val] uses Valhalla. `osrmr` [@osrmr] uses OSRM, it exposes only a small subset of OSRM services and does not handle spatial data formats.
60-
Among these packages, `osrm` has the advantage of using OSRM, which is easy to install and run on a local or remote server, of giving access to most OSRM services and of handling spatial data formats.
59+
Several packages exist to compute routes, trips or distance matrices. Most of them rely on commercial and non-free software and use non-free data. See for example `hereR` [@hereR] that uses here services, `gmapsdistance` [@gmapsdistance], `googleway` [@googleway] and `mapsapi` [@mapsapi] that use Google Maps Platform or `mapboxapi` [@mapboxapi] that relies on Mapbox. Using these packages imposes many restrictions on data extraction, analysis and sharing. Other packages use open source routing engines and open data: `graphhopper` [@graphhopper] uses GraphHopper, `opentripplanner` [@openttripplanner] uses OpenTripPlanner, `valhallr` [@val] uses Valhalla. `osrmr` [@osrmr] uses OSRM, however it exposes only a small subset of OSRM services and does not handle spatial data formats.
60+
Among these packages, `osrm` has the advantage of using OSRM, which is easy to install and run on a local or remote server, to give access to most OSRM services and to handle spatial data formats.
6161

6262
# Features
6363

64-
This is a short overview of the main features of `osrm`. The dataset used here is shipped with the package, it is a sample of 100 random pharmacies in Berlin ([© OpenStreetMap contributors](https://www.openstreetmap.org/copyright/en)) stored in a [geopackage](https://www.geopackage.org/) file.
64+
This is a short overview of the main features of `osrm`. The dataset used here is shipped with the package and contains a sample of 100 random pharmacies in Berlin ([© OpenStreetMap contributors](https://www.openstreetmap.org/copyright/en)) stored in a [geopackage](https://www.geopackage.org/) file.
6565

6666
* `osrmTable()` gives access to the *table* OSRM service. In this example we use this function to get the median time needed to access any pharmacy from any other pharmacy.
6767

@@ -118,15 +118,14 @@ The median time needed to access any pharmacy from any other pharmacy is 21.4 mi
118118
## src dst duration distance geometry
119119
## 1_2 1 2 21.11667 12.348 LINESTRING (-13170.51 58410...
120120

121-
This route is 12.3 kilometers long and it takes 21.1 minutes to drive through it.
121+
This route is 12.3 kilometers long and it takes 21.1 minutes to drive.
122122

123123
``` r
124124
plot(st_geometry(route))
125125
plot(st_geometry(pharmacy[1:2,]), pch = 20, add = T, cex = 1.5)
126126
```
127127

128-
![](route.png)
129-
128+
![Shortest route between two points.\label{fig:route}](route.png)
130129

131130
* `osrmTrip()` can be used to resolve the travelling salesman problem, it gives the shortest trip between a set of unordered points. In this example we want to obtain the shortest trip between the first five pharmacies.
132131

@@ -166,7 +165,7 @@ text(st_coordinates(pharmacy[1:5,]), labels = row.names(pharmacy[1:5,]),
166165
pos = 2)
167166
```
168167

169-
![](trip.png)
168+
![Shortest trip between a set of unordered points.\label{fig:trip}](trip.png)
170169

171170

172171
* `osrmIsochrone()` computes areas that are reachable within a given time span from a point and returns the reachable regions as polygons. These areas of equal travel time are called isochrones. Here we compute the isochrones from a specific point defined by its longitude and latitude.
@@ -195,7 +194,7 @@ plot(iso["isomax"], breaks = bks, pal = pals,
195194
points(x = 13.43, y = 52.47, pch = 4, lwd = 2, cex = 1.5)
196195
```
197196

198-
![](iso.png)
197+
![Isochrone map.\label{fig:iso}](iso.png)
199198

200199

201200
# References

0 commit comments

Comments
 (0)