chessboard
chessboard: An R package for creating network connections based on chess moves - Published in JOSS (2023)
Science Score: 100.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 10 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
✓Committers with academic emails
1 of 2 committers (50.0%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
connectivity-matrix
directed-networks
neighborhood
network
one-dimensional-networks
r-package
spatial-networks
two-dimensional-networks
undirected-networks
Scientific Fields
Engineering
Computer Science -
60% confidence
Last synced: 6 months ago
·
JSON representation
·
Repository
:package: Create network connections based on chess moves
Basic Info
- Host: GitHub
- Owner: FRBCesab
- License: gpl-2.0
- Language: R
- Default Branch: main
- Homepage: https://frbcesab.github.io/chessboard
- Size: 21.6 MB
Statistics
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 1
Topics
connectivity-matrix
directed-networks
neighborhood
network
one-dimensional-networks
r-package
spatial-networks
two-dimensional-networks
undirected-networks
Created over 3 years ago
· Last pushed over 2 years ago
Metadata Files
Readme
Changelog
Contributing
License
Code of conduct
Citation
README.Rmd
---
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(collapse = TRUE,
comment = "#>",
fig.path = "man/figures/",
out.width = "100%")
```
chessboard
=========================================================
[](https://CRAN.R-project.org/package=chessboard)
[](https://github.com/frbcesab/chessboard/actions/workflows/R-CMD-check.yaml)
[](https://app.codecov.io/gh/FRBCesab/chessboard)
[](https://github.com/frbcesab/chessboard/actions/workflows/pkgdown.yaml)
[](https://choosealicense.com/licenses/gpl-2.0/)
[](https://joss.theoj.org/papers/10.21105/joss.05753)
## Table of contents
• Overview
• Features
• Installation
• Get started
• Long-form documentations
• Citation
• Contributing
• Acknowledgments
• References
## Overview
The package `chessboard` provides functions to work with **directed**
(asymmetric) and **undirected** (symmetric) spatial (or non-spatial) **networks**.
It implements different methods to detect neighbors, all based on the chess game
(it goes beyond the rook and the queen) to create complex connectivity scenarios.
`chessboard` can handle spatial networks, but it does not explicitly use geographical
coordinates to find neighbors (it is not based on spatial distance).
Instead, it identifies neighbors according to **node labels**
(i.e. the node position on a two-dimension chessboard) and a specific method
(pawn, fool, rook, bishop, knight, queen, wizard, etc.).
It implements the following rules to detect neighbors and create edges:
- the **degree** of neighborhood: the number of adjacent nodes that will be used
to create direct edges.
- the **orientation** of neighborhood: can neighbors be detected horizontally,
vertically and/or diagonally?
- the **direction** of neighborhood: does the sampling has a main direction?
This can be particularly relevant for directed networks (e.g. rivers).
## Features
The main purpose of `chessboard` is to create various network objects, including:
- **node list**
- **edge list**
- **connectivity matrix**
`chessboard` also provides different plotting functions (all based on the [`ggplot2`](https://ggplot2.tidyverse.org/) package):
- [`gg_matrix()`](https://frbcesab.github.io/chessboard/reference/gg_matrix.html)
plots a (connectivity) matrix
- [`gg_chessboard()`](https://frbcesab.github.io/chessboard/reference/gg_chessboard.html)
plots the sampling as a chessboard
Read the [Visualization tools](https://frbcesab.github.io/chessboard/articles/visualization-tools.html)
vignette for further details.

Finally, the package can also produce objects that will be used later in
Moran's Eigenvector Maps
([MEM](https://rdrr.io/cran/adespatial/man/mem.html),
Dray _et al._ 2006) and Asymetric Eigenvector Maps
([AEM](https://rdrr.io/cran/adespatial/man/aem.html),
Blanchet _et al._ 2008), methods available in the package
[`adespatial`](https://cran.r-project.org/package=adespatial) (Dray _et al._ 2023):
- **edges weights matrix**
- **spatial weights matrix**
- **nodes by edges matrix**
- **edges weights vector**
## Installation
You can install the stable version from [CRAN](https://cran.r-project.org/) with:
```{r eval=FALSE}
## Install stable version of < chessboard > from CRAN ----
install.packages("chessboard")
```
Or you can install the development version from [GitHub](https://github.com/) with:
```{r eval=FALSE}
## Install < remotes > package (if not already installed) ----
if (!requireNamespace("remotes", quietly = TRUE)) {
install.packages("remotes")
}
## Install dev version of < chessboard > from GitHub ----
remotes::install_github("FRBCesab/chessboard")
```
Then you can attach the package `chessboard`:
```{r eval=FALSE}
library("chessboard")
```
## Get started
For an overview of the main features of `chessboard`, please read the
[Get started](https://frbcesab.github.io/chessboard/articles/chessboard.html)
vignette.
## Long-form documentations
`chessboard` provides three vignettes to learn more about the package:
- the [Get started](https://frbcesab.github.io/chessboard/articles/chessboard.html)
vignette describes the core features of the package
- the [Chess pieces](https://frbcesab.github.io/chessboard/articles/chess-pieces.html)
vignette details the different methods implemented in `chessboard` to detect
neighbors
- the [Visualization tools](https://frbcesab.github.io/chessboard/articles/visualization-tools.html)
vignette describes the plotting functions available in `chessboard`
## Citation
Please cite `chessboard` as:
> Casajus N, Rievrs Borges E, Tabacchi E, Fried G & Mouquet N (2023) `chessboard`: An R
package for creating network connections based on chess moves.
**_Journal of Open Source Software_**, _8_, 5753. .
## Contributing
All types of contributions are encouraged and valued. For more information,
check out our [Contributor Guidelines](https://github.com/FRBCesab/chessboard/blob/main/CONTRIBUTING.md).
Please note that the `chessboard` project is released with a
[Contributor Code of Conduct](https://contributor-covenant.org/version/2/1/CODE_OF_CONDUCT.html).
By contributing to this project, you agree to abide by its terms.
## Acknowledgments
This package has been developed for the
[FRB-CESAB](https://www.fondationbiodiversite.fr/en/about-the-foundation/le-cesab/)
working group
[Bridge](https://www.fondationbiodiversite.fr/en/the-frb-in-action/programs-and-projects/le-cesab/bridge/)
that aims to better understand the role of local and regional environmental
factors in shaping the taxonomic and functional diversity of plant communities
established along river corridors, roadside corridors and cultivated field
margins.
## References
Blanchet FG, Legendre P & Borcard D (2008) Modelling directional spatial processes
in ecological data. **Ecological Modelling**, 215, 325-336.
doi: [10.1016/j.ecolmodel.2008.04.001](https://doi.org/10.1016/j.ecolmodel.2008.04.001).
Csardi G & Nepusz T (2006) The igraph software package for complex network research.
**InterJournal, Complex Systems**, 1695, 1-9. .
Dray S, Bauman D, Blanchet G _et al._ (2023) `adespatial`: Multivariate Multiscale Spatial Analysis.
R package version 0.3-21, .
Dray S, Legendre P & Peres-Neto PR (2006) Spatial modeling: a comprehensive
framework for principal coordinate analysis of neighbor matrices (PCNM).
**Ecological Modelling**, 196: 483–93.
doi: [10.1016/j.ecolmodel.2006.02.015](https://doi.org/10.1016/j.ecolmodel.2006.02.015).
Owner
- Name: FRB CESAB
- Login: FRBCesab
- Kind: organization
- Location: Montpellier, FRANCE
- Website: https://www.fondationbiodiversite.fr/en/about-the-foundation/le-cesab/
- Repositories: 17
- Profile: https://github.com/FRBCesab
JOSS Publication
chessboard: An R package for creating network connections based on chess moves
Published
October 13, 2023
Volume 8, Issue 90, Page 5753
Authors
Tags
r package networks neighbors edgesCitation (CITATION.cff)
# -----------------------------------------------------------
# CITATION file created with {cffr} R package, v0.5.0
# See also: https://docs.ropensci.org/cffr/
# -----------------------------------------------------------
cff-version: 1.2.0
message: 'To cite package "chessboard" in publications use:'
type: software
license: GPL-2.0-or-later
title: 'chessboard: Create Network Connections Based on Chess Moves'
version: 0.1.0.9000
doi: 10.21105/joss.05753
abstract: 'Provides functions to work with directed (asymmetric) and undirected (symmetric)
spatial networks. It makes the creation of connectivity matrices easier, i.e. a
binary matrix of dimension n x n, where n is the number of nodes (sampling units)
indicating the presence (1) or the absence (0) of an edge (link) between pairs of
nodes. Different network objects can be produced by ''chessboard'': node list, neighbor
list, edge list, connectivity matrix. It can also produce objects that will be used
later in Moran''s Eigenvector Maps (Dray et al. (2006) <doi:10.1016/j.ecolmodel.2006.02.015>)
and Asymetric Eigenvector Maps (Blanchet et al. (2008) <doi:10.1016/j.ecolmodel.2008.04.001>),
methods available in the package ''adespatial'' (Dray et al. (2023) <https://CRAN.R-project.org/package=adespatial>).
This work is part of the FRB-CESAB working group Bridge <https://www.fondationbiodiversite.fr/en/the-frb-in-action/programs-and-projects/le-cesab/bridge/>.'
authors:
- family-names: Casajus
given-names: Nicolas
email: nicolas.casajus@fondationbiodiversite.fr
orcid: https://orcid.org/0000-0002-5537-5294
- family-names: Rievrs Borges
given-names: Erica
email: erica.rievrs@fondationbiodiversite.fr
orcid: https://orcid.org/0000-0001-7751-6265
- family-names: Tabacchi
given-names: Eric
email: eric.tabacchi@univ-tlse3.fr
orcid: https://orcid.org/0000-0001-7729-4439
- family-names: Fried
given-names: Guillaume
email: guillaume.fried@anses.fr
orcid: https://orcid.org/0000-0002-3653-195X
- family-names: Mouquet
given-names: Nicolas
email: nicolas.mouquet@cnrs.fr
orcid: https://orcid.org/0000-0003-1840-6984
preferred-citation:
type: article
title: 'chessboard: An R package for creating network connections based on chess
moves'
authors:
- name: Casajus Nicolas
- name: Rievrs-Borges Erica
- name: Tabacchi Eric
- name: Fried Guillaume
- name: Mouquet Nicolas
journal: Journal of Open Source Software
year: '2023'
volume: '8'
issue: '90'
url: https://doi.org/10.21105/joss.05753
doi: 10.21105/joss.05753
start: '5753'
repository: https://CRAN.R-project.org/package=chessboard
repository-code: https://github.com/frbcesab/chessboard
url: https://github.com/frbcesab/chessboard
contact:
- family-names: Casajus
given-names: Nicolas
email: nicolas.casajus@fondationbiodiversite.fr
orcid: https://orcid.org/0000-0002-5537-5294
keywords:
- connectivity-matrix
- directed-networks
- neighborhood
- network
- one-dimensional-networks
- r-package
- spatial-networks
- two-dimensional-networks
- undirected-networks
references:
- type: software
title: dplyr
abstract: 'dplyr: A Grammar of Data Manipulation'
notes: Imports
url: https://dplyr.tidyverse.org
repository: https://CRAN.R-project.org/package=dplyr
authors:
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
orcid: https://orcid.org/0000-0003-4757-117X
- family-names: François
given-names: Romain
orcid: https://orcid.org/0000-0002-2444-4226
- family-names: Henry
given-names: Lionel
- family-names: Müller
given-names: Kirill
orcid: https://orcid.org/0000-0002-1416-3412
- family-names: Vaughan
given-names: Davis
email: davis@posit.co
orcid: https://orcid.org/0000-0003-4777-038X
year: '2023'
- type: software
title: ggplot2
abstract: 'ggplot2: Create Elegant Data Visualisations Using the Grammar of Graphics'
notes: Imports
url: https://ggplot2.tidyverse.org
repository: https://CRAN.R-project.org/package=ggplot2
authors:
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
orcid: https://orcid.org/0000-0003-4757-117X
- family-names: Chang
given-names: Winston
orcid: https://orcid.org/0000-0002-1576-2126
- family-names: Henry
given-names: Lionel
- family-names: Pedersen
given-names: Thomas Lin
email: thomas.pedersen@posit.co
orcid: https://orcid.org/0000-0002-5147-4711
- family-names: Takahashi
given-names: Kohske
- family-names: Wilke
given-names: Claus
orcid: https://orcid.org/0000-0002-7470-9261
- family-names: Woo
given-names: Kara
orcid: https://orcid.org/0000-0002-5125-4188
- family-names: Yutani
given-names: Hiroaki
orcid: https://orcid.org/0000-0002-3385-7233
- family-names: Dunnington
given-names: Dewey
orcid: https://orcid.org/0000-0002-9415-4582
year: '2023'
- type: software
title: magrittr
abstract: 'magrittr: A Forward-Pipe Operator for R'
notes: Imports
url: https://magrittr.tidyverse.org
repository: https://CRAN.R-project.org/package=magrittr
authors:
- family-names: Bache
given-names: Stefan Milton
email: stefan@stefanbache.dk
- family-names: Wickham
given-names: Hadley
email: hadley@rstudio.com
year: '2023'
- type: software
title: rlang
abstract: 'rlang: Functions for Base Types and Core R and ''Tidyverse'' Features'
notes: Imports
url: https://rlang.r-lib.org
repository: https://CRAN.R-project.org/package=rlang
authors:
- family-names: Henry
given-names: Lionel
email: lionel@posit.co
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
year: '2023'
- type: software
title: sf
abstract: 'sf: Simple Features for R'
notes: Imports
url: https://r-spatial.github.io/sf/
repository: https://CRAN.R-project.org/package=sf
authors:
- family-names: Pebesma
given-names: Edzer
email: edzer.pebesma@uni-muenster.de
orcid: https://orcid.org/0000-0001-8049-7069
year: '2023'
- type: software
title: tidyr
abstract: 'tidyr: Tidy Messy Data'
notes: Imports
url: https://tidyr.tidyverse.org
repository: https://CRAN.R-project.org/package=tidyr
authors:
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
- family-names: Vaughan
given-names: Davis
email: davis@posit.co
- family-names: Girlich
given-names: Maximilian
year: '2023'
- type: software
title: knitr
abstract: 'knitr: A General-Purpose Package for Dynamic Report Generation in R'
notes: Suggests
url: https://yihui.org/knitr/
repository: https://CRAN.R-project.org/package=knitr
authors:
- family-names: Xie
given-names: Yihui
email: xie@yihui.name
orcid: https://orcid.org/0000-0003-0645-5666
year: '2023'
- type: software
title: igraph
abstract: 'igraph: Network Analysis and Visualization'
notes: Suggests
url: https://r.igraph.org/
repository: https://CRAN.R-project.org/package=igraph
authors:
- family-names: Csárdi
given-names: Gábor
email: csardi.gabor@gmail.com
orcid: https://orcid.org/0000-0001-7098-9676
- family-names: Nepusz
given-names: Tamás
email: ntamas@gmail.com
orcid: https://orcid.org/0000-0002-1451-338X
- family-names: Traag
given-names: Vincent
orcid: https://orcid.org/0000-0003-3170-3879
- family-names: Horvát
given-names: Szabolcs
email: szhorvat@gmail.com
orcid: https://orcid.org/0000-0002-3100-523X
- family-names: Zanini
given-names: Fabio
email: fabio.zanini@unsw.edu.au
orcid: https://orcid.org/0000-0001-7097-8539
- family-names: Noom
given-names: Daniel
- family-names: Müller
given-names: Kirill
email: kirill@cynkra.com
orcid: https://orcid.org/0000-0002-1416-3412
year: '2023'
- type: software
title: patchwork
abstract: 'patchwork: The Composer of Plots'
notes: Suggests
url: https://patchwork.data-imaginist.com
repository: https://CRAN.R-project.org/package=patchwork
authors:
- family-names: Pedersen
given-names: Thomas Lin
email: thomasp85@gmail.com
orcid: https://orcid.org/0000-0002-5147-4711
year: '2023'
- type: software
title: rmarkdown
abstract: 'rmarkdown: Dynamic Documents for R'
notes: Suggests
url: https://pkgs.rstudio.com/rmarkdown/
repository: https://CRAN.R-project.org/package=rmarkdown
authors:
- family-names: Allaire
given-names: JJ
email: jj@posit.co
- family-names: Xie
given-names: Yihui
email: xie@yihui.name
orcid: https://orcid.org/0000-0003-0645-5666
- family-names: Dervieux
given-names: Christophe
email: cderv@posit.co
orcid: https://orcid.org/0000-0003-4474-2498
- family-names: McPherson
given-names: Jonathan
email: jonathan@posit.co
- family-names: Luraschi
given-names: Javier
- family-names: Ushey
given-names: Kevin
email: kevin@posit.co
- family-names: Atkins
given-names: Aron
email: aron@posit.co
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
- family-names: Cheng
given-names: Joe
email: joe@posit.co
- family-names: Chang
given-names: Winston
email: winston@posit.co
- family-names: Iannone
given-names: Richard
email: rich@posit.co
orcid: https://orcid.org/0000-0003-3925-190X
year: '2023'
- type: software
title: testthat
abstract: 'testthat: Unit Testing for R'
notes: Suggests
url: https://testthat.r-lib.org
repository: https://CRAN.R-project.org/package=testthat
authors:
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
year: '2023'
version: '>= 3.0.0'
GitHub Events
Total
- Watch event: 2
Last Year
- Watch event: 2
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Nicolas Casajus | n****s@g****m | 310 |
| Daniel S. Katz | d****z@i****g | 1 |
Committer Domains (Top 20 + Academic)
ieee.org: 1
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 13
- Total pull requests: 1
- Average time to close issues: 17 days
- Average time to close pull requests: 13 minutes
- Total issue authors: 3
- Total pull request authors: 1
- Average comments per issue: 0.69
- Average comments per pull request: 1.0
- Merged pull requests: 1
- 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
- ahasverus (11)
- gsapijaszko (1)
- Pentaonia (1)
Pull Request Authors
- danielskatz (1)
Top Labels
Issue Labels
documentation (8)
enhancement (2)
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- cran 219 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 1
- Total maintainers: 1
cran.r-project.org: chessboard
Create Network Connections Based on Chess Moves
- Homepage: https://github.com/frbcesab/chessboard
- Documentation: http://cran.r-project.org/web/packages/chessboard/chessboard.pdf
- License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
-
Latest release: 0.1
published over 2 years ago
Rankings
Forks count: 21.3%
Stargazers count: 28.0%
Dependent packages count: 29.1%
Dependent repos count: 36.9%
Average: 40.3%
Downloads: 86.5%
Maintainers (1)
Last synced:
6 months ago
Dependencies
DESCRIPTION
cran
- dplyr * imports
- ggplot2 * imports
- magrittr * imports
- parallel * imports
- rlang * imports
- sf * imports
- tidyr * imports
- knitr * suggests
- patchwork * suggests
- rmarkdown * suggests
- rnaturalearth * suggests
- rnaturalearthdata * suggests
- rnaturalearthhires * suggests
- sp * suggests
- testthat >= 3.0.0 suggests
.github/workflows/R-CMD-check.yaml
actions
- actions/checkout v2 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/draft-pdf.yaml
actions
- actions/checkout v3 composite
- actions/upload-artifact v1 composite
- openjournals/openjournals-draft-action master composite
.github/workflows/pkgdown.yaml
actions
- JamesIves/github-pages-deploy-action v4.4.1 composite
- actions/checkout v3 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 v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/update-citation-cff.yaml
actions
- actions/checkout v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
