mapscanner

R package to print maps, draw on them, and scan them back in

https://github.com/ropensci/mapscanner

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (20.4%) to scientific vocabulary

Keywords

maps r-package scan spatial
Last synced: 4 months ago · JSON representation

Repository

R package to print maps, draw on them, and scan them back in

Basic Info
Statistics
  • Stars: 89
  • Watchers: 9
  • Forks: 7
  • Open Issues: 5
  • Releases: 4
Topics
maps r-package scan spatial
Created over 6 years ago · Last pushed 11 months ago
Metadata Files
Readme Changelog Contributing License Codemeta

README.Rmd

---
output: github_document
---



```{r, include = FALSE}
knitr::opts_chunk$set (
    collapse = TRUE,
    comment = "#>",
    out.width = "100%"
)
```

# mapscanner 


[![R build
status](https://github.com/ropensci/mapscanner/workflows/R-CMD-check/badge.svg)](https://github.com/ropensci/mapscanner/actions?query=workflow%3AR-CMD-check)
[![CRAN_Status_Badge](https://www.r-pkg.org/badges/version/mapscanner)](https://cran.r-project.org/package=mapscanner/) 
[![CRAN Downloads](https://cranlogs.r-pkg.org/badges/grand-total/mapscanner?color=orange)](https://cran.r-project.org/package=mapscanner)
[![codecov](https://codecov.io/gh/ropensci/mapscanner/branch/main/graph/badge.svg)](https://app.codecov.io/gh/ropensci/mapscanner)
[![Project Status: Concept](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)

[![](https://badges.ropensci.org/330_status.svg)](https://github.com/ropensci/software-review/issues/330)




## What does this package do for me?

`mapscanner` is an **R** package that enables lines drawn by hand on maps to be
converted to spatial objects. The package has two primary functions: one for
producing maps, and one for rectifying hand-drawn lines to the coordinate
system of the original map. The package is intended for use in social surveys
and similar endeavours in which hand-drawn markings on maps need to be
converted to spatial objects. Maps can be either paper- or screen-based.
Markings on paper maps need to be scanned, photographed, or otherwise
digitised, while maps with screen-based markings need to be saved as
`.png`-format images.

## Installation

The current stable version can be installed from CRAN with:
```{r cran-inst, eval = FALSE}
install.packages ("mapscanner")
```

Alternatively, the development version can be installed via [rOpenSci's
r-universe](https://ropensci.r-universe.dev/) by running the following prior to
calling `install.packages()`:
```{r r-univ, eval = FALSE}
options (repos = c (
    ropensci = "https://ropensci.r-universe.dev",
    CRAN = "https://cloud.r-project.org"
))
```

The package can then be loaded for usage in a R session with
```{r library}
library (mapscanner)
```

## Usage

The package is designed to enable the following workflow:

1. Generate a map with the
   [`ms_generate_map()`](https://docs.ropensci.org/mapscanner/reference/ms_generate_map.html)
   function, which automatically produces both `.pdf` and `.png` versions;

2. Either print the `.pdf` version to use as desired in any kind of survey
   environment, or use either the `.pdf` or `.png` versions in digital form for
   screen-based surveys.

3. Draw on the map;

4. For paper maps, digitise the drawn-on (from here on, "modified") map,
   converting it to either `.pdf` or `.png` format; and

5. Rectify the modified version against the original via the
   [`ms_rectify_map()`](https://docs.ropensci.org/mapscanner/reference/ms_rectify_map.html)
   function, which distinguishes individual annotations,
   and converts each one to a spatial object able to be analysed in any desired
   manner.

### Practical tips

The `mapscanner` package is intended to aid a *practical* workflow, and so
a few practical tips may be recommended here to ensure best results:

1. The original digital files generated with
   [`ms_generate_map()`](https://docs.ropensci.org/mapscanner/reference/ms_generate_map.html)
   are necessary to rectify subsequently drawn-on and scanned maps, and so must
   be retained at all times.
2. Marks drawn on maps should be *coloured* -- any black or grey markings will
   be ignored. This has the advantage that individual annotations *not*
   intended to be converted to spatial objects (such as unique identification
   or participant codes) may be made on maps in black or grey.
3. For drawings of areas, best results will be achieved through ensuring that
   all lines form closed polygons. While the default `type = "hulls"` argument
   should work even when lines are not closed, the `type = "polygons"` argument
   will generally produce more accurate results, yet should only be used when
   all lines form closed polygons (see below for details on how these two differ).
4. Digitised versions of paper maps should contain *white* borders, so do not,
   for example, photograph modified maps lying on dark surfaces. If maps are to
   be photographed, then best results can be achieved by simply placing them on
   a larger, enclosing sheet of white paper.

The following two sections describe the two primary functions of the
`mapscanner` package, corresponding to the two primary steps of producing maps
to be used in surveys (or other activities), and rectifying modified maps
against these originals in order to extract spatial objects. The second of
these sections also describes the kinds of markings able to be recognised, and
the kinds of spatial objects to which these may be converted.


### Mapbox API tokens

Map generation with `mapscanner` requires a personal token or key from
[`mapbox`](https://www.mapbox.com/), which can be obtained by following the
links from
[https://docs.mapbox.com/api](https://docs.mapbox.com/api/#access-tokens-and-token-scopes/).
If you already have a token, the easiest way to use it with `mapscanner` is to
create (or edit) a file `~/.Renviron`, and insert a line,

``` bash
MAPBOX_TOKEN=
```
This will then be available every time you start R, without any need to
explicitly set the token each time you want to use the package. The token may
be given any unique name that includes "mapbox" (case insensitive).
Alternatively, if you wish to keep your token truly private, and only use it
for your current R session, you may load `mapscanner`, and then run
`set_mapbox_token()`.

### Map generation

Having obtained and set a [`mapbox`](https://www.mapbox.com/) token as
described above, `mapscanner` may then be used to generate maps. The package
comes with a sample map of Omaha, Nebraska, USA, and one with some red lines
drawn on it: ![](man/figures/omaha-polygons.png)

That's just a standard `png` image with no notion of geographical coordinates.
The original map was generated with

```{r omaha-fakey, eval = FALSE}
bbox <- rbind (
    c (-96.12923, -96.01011),
    c (41.26145, 41.32220)
) # portion of omaha
ms_generate_map (bbox, max_tiles = 16L, mapname = "omaha")
```
```{r omaha, echo = FALSE}
bbox <- rbind (
    c (-96.12923, -96.01011),
    c (41.26145, 41.32220)
)
message ("Successfully generated 'omaha.pdf' and 'omaha.png'")
```
As indicated, the function generates a map in both `.pdf` and `.png` formats.
These files must be retained as the "master" maps against which subsequently
modified -- drawn-over and scanned-in -- versions will be rectified. 


### Map rectification

The magic within the `mapscanner` package happens via the [`RNiftyReg`
package](https://github.com/jonclayden/RNiftyReg), itself primarily intended to
align brain scans and other medical images, but which is precisely the tool
needed here. The package comes with two sample `.png` images which can be used
to demonstrate map rectification. In the following code, `f_modified` is the
image shown above, modified from the original by drawing a red line around
a particular region of Omaha.
```{r scan_maps}
f_orig <- system.file ("extdata", "omaha.png", package = "mapscanner")
f_mod <- system.file ("extdata", "omaha-polygons.png", package = "mapscanner")
res <- ms_rectify_map (f_orig, f_mod, type = "polygons")
res
```
The rectification can take quite some time, during which [`RNiftyReg`
package](https://github.com/jonclayden/RNiftyReg) is constructing the best
transformation of the modified image back on to the original. The result of
`ms_rectify_map()` is a spatial object in
[`sf`](https://cran.r-project.org/package=sf)-format in which each drawn
component is represented as a separate polygon. Finally, we can plot the result
as an interactive map using packages like
[`mapview`](https://github.com/r-spatial/mapview) with the following commands:
```{r mapview, eval = FALSE}
library (mapview)
mapview (res)
```
or [`mapdeck`](https://github.com/symbolixAU/mapdeck), which similarly requires
a mapbox token:
```{r mapdeck, eval = FALSE}
library (mapdeck)
set_token (Sys.getenv (""))
mapdeck () %>%
    add_polygon (res,
        fill_colour = "#ffff00cc",
        stroke_colour = "#ff0000", stroke_width = 20
    )
```


```{r leaflet, echo = FALSE, eval = FALSE}
library (leaflet)

leaflet (res) %>%
    addPolygons (
        color = "#FF1111", weight = 1, opacity = 1.0,
        fillOpacity = 0.5
    ) %>%
    addProviderTiles ("CartoDB.Positron") %>%
    setView (
        lng = mean (bbox [1, ]),
        lat = mean (bbox [2, ]),
        zoom = 12
    )
```

![](man/figures/leaflet-1.png)

And our hand-drawn lines shown above have been converted to standard spatial
objects able to be analysed in any desired way. See the [package
vignette](https://docs.ropensci.org/mapscanner/articles/mapscanner.html) for
more detail of what the `mapscanner` package can do.


## Code of Conduct

Please note that this package is released with a [Contributor Code of
Conduct](https://ropensci.org/code-of-conduct/). By contributing to this
project, you agree to abide by its terms.

[![ropensci_footer](https://ropensci.org/public_images/ropensci_footer.png)](https://ropensci.org)


## Contributors









All contributions to this project are gratefully acknowledged using the [`allcontributors` package](https://github.com/ropenscilabs/allcontributors) following the [all-contributors](https://allcontributors.org) specification. Contributions of any kind are welcome!

### Code


mpadge

mdsumner

maelle

potterzot
### Issue Authors

ThomasDier

khondula

tomroh

SantoshSrinivas79

asitemade4u

espinielli
### Issue Contributors

dcooley

sckott

jeroen

Owner

  • Name: rOpenSci
  • Login: ropensci
  • Kind: organization
  • Email: info@ropensci.org
  • Location: Berkeley, CA

CodeMeta (codemeta.json)

{
  "@context": "https://doi.org/10.5063/schema/codemeta-2.0",
  "@type": "SoftwareSourceCode",
  "identifier": "mapscanner",
  "description": "Enables preparation of maps to be printed and drawn on. Modified maps can then be scanned back in, and hand-drawn marks converted to spatial objects.",
  "name": "mapscanner: Print Maps, Draw on Them, Scan Them Back in",
  "codeRepository": "https://github.com/ropensci/mapscanner",
  "issueTracker": "https://github.com/ropensci/mapscanner/issues",
  "license": "https://spdx.org/licenses/GPL-3.0",
  "version": "0.1.1.002",
  "programmingLanguage": {
    "@type": "ComputerLanguage",
    "name": "R",
    "url": "https://r-project.org"
  },
  "runtimePlatform": "R version 4.4.1 (2024-06-14)",
  "provider": {
    "@id": "https://cran.r-project.org",
    "@type": "Organization",
    "name": "Comprehensive R Archive Network (CRAN)",
    "url": "https://cran.r-project.org"
  },
  "author": [
    {
      "@type": "Person",
      "givenName": "Mark",
      "familyName": "Padgham",
      "email": "mark.padgham@email.com"
    },
    {
      "@type": "Person",
      "givenName": "Michael D.",
      "familyName": "Sumner",
      "email": "mdsumner@gmail.com"
    }
  ],
  "copyrightHolder": [
    {
      "@type": "Person",
      "givenName": "Stanislaw",
      "familyName": "Adaszewski"
    }
  ],
  "maintainer": [
    {
      "@type": "Person",
      "givenName": "Mark",
      "familyName": "Padgham",
      "email": "mark.padgham@email.com"
    }
  ],
  "softwareSuggestions": [
    {
      "@type": "SoftwareApplication",
      "identifier": "dplyr",
      "name": "dplyr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=dplyr"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "ggplot2",
      "name": "ggplot2",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=ggplot2"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "gibble",
      "name": "gibble",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=gibble"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "jpeg",
      "name": "jpeg",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=jpeg"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "knitr",
      "name": "knitr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=knitr"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "lwgeom",
      "name": "lwgeom",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=lwgeom"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "mapview",
      "name": "mapview",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=mapview"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "mmand",
      "name": "mmand",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=mmand"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "osmdata",
      "name": "osmdata",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=osmdata"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "polyclip",
      "name": "polyclip",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=polyclip"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "rmarkdown",
      "name": "rmarkdown",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=rmarkdown"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "spelling",
      "name": "spelling",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=spelling"
    },
    {
      "@type": "SoftwareApplication",
      "identifier": "testthat",
      "name": "testthat",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=testthat"
    }
  ],
  "softwareRequirements": {
    "1": {
      "@type": "SoftwareApplication",
      "identifier": "R",
      "name": "R",
      "version": ">= 3.5.0"
    },
    "2": {
      "@type": "SoftwareApplication",
      "identifier": "cli",
      "name": "cli",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=cli"
    },
    "3": {
      "@type": "SoftwareApplication",
      "identifier": "curl",
      "name": "curl",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=curl"
    },
    "4": {
      "@type": "SoftwareApplication",
      "identifier": "fs",
      "name": "fs",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=fs"
    },
    "5": {
      "@type": "SoftwareApplication",
      "identifier": "glue",
      "name": "glue",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=glue"
    },
    "6": {
      "@type": "SoftwareApplication",
      "identifier": "magick",
      "name": "magick",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=magick"
    },
    "7": {
      "@type": "SoftwareApplication",
      "identifier": "magrittr",
      "name": "magrittr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=magrittr"
    },
    "8": {
      "@type": "SoftwareApplication",
      "identifier": "memoise",
      "name": "memoise",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=memoise"
    },
    "9": {
      "@type": "SoftwareApplication",
      "identifier": "pdftools",
      "name": "pdftools",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=pdftools"
    },
    "10": {
      "@type": "SoftwareApplication",
      "identifier": "png",
      "name": "png",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=png"
    },
    "11": {
      "@type": "SoftwareApplication",
      "identifier": "purrr",
      "name": "purrr",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=purrr"
    },
    "12": {
      "@type": "SoftwareApplication",
      "identifier": "raster",
      "name": "raster",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=raster"
    },
    "13": {
      "@type": "SoftwareApplication",
      "identifier": "Rcpp",
      "name": "Rcpp",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=Rcpp"
    },
    "14": {
      "@type": "SoftwareApplication",
      "identifier": "reproj",
      "name": "reproj",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=reproj"
    },
    "15": {
      "@type": "SoftwareApplication",
      "identifier": "RNiftyReg",
      "name": "RNiftyReg",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=RNiftyReg"
    },
    "16": {
      "@type": "SoftwareApplication",
      "identifier": "sf",
      "name": "sf",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=sf"
    },
    "17": {
      "@type": "SoftwareApplication",
      "identifier": "slippymath",
      "name": "slippymath",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=slippymath"
    },
    "18": {
      "@type": "SoftwareApplication",
      "identifier": "tibble",
      "name": "tibble",
      "provider": {
        "@id": "https://cran.r-project.org",
        "@type": "Organization",
        "name": "Comprehensive R Archive Network (CRAN)",
        "url": "https://cran.r-project.org"
      },
      "sameAs": "https://CRAN.R-project.org/package=tibble"
    },
    "SystemRequirements": {}
  },
  "fileSize": "8494.334KB",
  "releaseNotes": "https://github.com/ropensci/mapscanner/blob/master/NEWS.md",
  "readme": "https://github.com/ropensci/mapscanner/blob/main/README.md",
  "contIntegration": [
    "https://github.com/ropensci/mapscanner/actions?query=workflow%3AR-CMD-check",
    "https://app.codecov.io/gh/ropensci/mapscanner"
  ],
  "developmentStatus": "https://www.repostatus.org/#active",
  "review": {
    "@type": "Review",
    "url": "https://github.com/ropensci/software-review/issues/330",
    "provider": "https://ropensci.org"
  },
  "keywords": [
    "r-package",
    "maps",
    "scan",
    "spatial"
  ],
  "relatedLink": "https://CRAN.R-project.org/package=mapscanner"
}

GitHub Events

Total
  • Issues event: 1
  • Watch event: 2
  • Issue comment event: 3
  • Push event: 2
Last Year
  • Issues event: 1
  • Watch event: 2
  • Issue comment event: 3
  • Push event: 2

Committers

Last synced: almost 2 years ago

All Time
  • Total Commits: 424
  • Total Committers: 4
  • Avg Commits per committer: 106.0
  • Development Distribution Score (DDS): 0.05
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
mpadge m****m@e****m 403
Michael Sumner m****r@g****m 19
Nicholas Potter p****t 1
Maëlle Salmon m****n@y****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 44
  • Total pull requests: 8
  • Average time to close issues: 2 months
  • Average time to close pull requests: 2 days
  • Total issue authors: 9
  • Total pull request authors: 3
  • Average comments per issue: 2.39
  • Average comments per pull request: 1.63
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • mpadge (33)
  • mdsumner (3)
  • asitemade4u (2)
  • ThomasDier (1)
  • khondula (1)
  • maelle (1)
  • espinielli (1)
  • tomroh (1)
  • SantoshSrinivas79 (1)
Pull Request Authors
  • mdsumner (6)
  • maelle (3)
  • potterzot (1)
Top Labels
Issue Labels
future stuff (3) must do (2) enhancement (2) bug (2) documentation (1) help wanted (1) wontfix (1)
Pull Request Labels

Packages

  • Total packages: 2
  • Total downloads:
    • cran 269 last-month
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 7
  • Total maintainers: 1
proxy.golang.org: github.com/ropensci/mapscanner
  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Stargazers count: 5.4%
Dependent repos count: 5.7%
Average: 6.0%
Forks count: 7.4%
Last synced: 5 months ago
cran.r-project.org: mapscanner

Print Maps, Draw on Them, Scan Them Back in

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 269 Last month
Rankings
Stargazers count: 4.4%
Forks count: 9.1%
Dependent packages count: 29.8%
Average: 29.8%
Dependent repos count: 35.5%
Downloads: 70.4%
Maintainers (1)
Last synced: 4 months ago

Dependencies

DESCRIPTION cran
  • R >= 3.5.0 depends
  • RNiftyReg * imports
  • Rcpp * imports
  • cli * imports
  • curl * imports
  • fs * imports
  • glue * imports
  • magick * imports
  • magrittr * imports
  • memoise * imports
  • pdftools * imports
  • png * imports
  • purrr * imports
  • raster * imports
  • reproj * imports
  • sf * imports
  • slippymath * imports
  • tibble * imports
  • dplyr * suggests
  • ggplot2 * suggests
  • gibble * suggests
  • jpeg * suggests
  • knitr * suggests
  • lwgeom * suggests
  • mapview * suggests
  • mmand * suggests
  • osmdata * suggests
  • polyclip * suggests
  • rmarkdown * suggests
  • spelling * suggests
  • testthat * suggests
.github/workflows/R-CMD-check.yaml actions
  • actions/checkout v4 composite
  • r-lib/actions/check-r-package v2 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/extra-os-check.yaml actions
  • actions/checkout v4 composite
  • r-lib/actions/check-r-package v2 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/test-coverage.yaml actions
  • actions/checkout v4 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.hooks/description cran