Data-Derived Graph Construction Utilities
Overview
Constructs data-derived graphs from numerical observations using mutual, shared-neighbor, intersection, geodesic, radius, adaptive-radius, and minimum-spanning-tree completion methods. Provides graph conversion, pruning, diagnostics, spectral embedding, endpoint detection, and path utilities. The implemented graph constructions include methods described by Jarvis and Patrick (1973) doi:10.1109/T-C.1973.223640, Brito et al. (1997) doi:10.1016/S0167-7152(96)00213-1, Berry and Sauer (2019) doi:10.3934/fods.2019001, and Gower and Ross (1969) doi:10.2307/2346439.
Breaking API changes
- Removes the deprecated
create.radius.graph()andcreate.adaptive.radius.graph()compatibility wrappers. Usecreate.rknn.graph()withtype = "fixed"ortype = "adaptive.radius", respectively. - Removes the temporary public backend entry point
cpp.create.rknn.graphs(). Usecreate.rknn.graphs(backend = "cpp"). - Internalizes the low-level
dist.to.knn(),euclidean.distance(), andgraph.adj.mat()helpers. - Removes the superseded
adjlist.to.igraph()conversion function.as_igraph()now accepts bare adjacency lists and an optional alignedweight.listargument.
Show all changes in 0.2.0Hide the rest of the changes in 0.2.0
- Removes the unused graph-edit workflow comprising
graph.edit.distance(),load.graph.data(),calculate.edit.distances(), andcreate.distance.plot().
Other changes
- Fixes a C++ One Definition Rule violation reported by CRAN's special link-time-optimization check. The minimum-spanning-tree implementation now uses a privately scoped edge type, and an unused conflicting intersection-kNN helper type has been removed. This does not change the R API or graph semantics.
- Fixes an ANN fixed-radius boundary issue that could omit adaptive-radius edges lying exactly at a local-scale threshold. In particular, the adaptive maximum-radius rule with factor one now reproduces symmetric-kNN edges for exact, tie-free searches.
- Clarifies that the historical
rel_geodesic_stressdiagnostic is a target-normalized graph-geodesic relative RMSE, not Kruskal's Stress-1. - Adds a full workflow vignette covering graph construction, lifecycle diagnostics, connectivity repair, parameter sequences, conversion to
igraph, and geodesic-isometry diagnostics. - Expands examples across the exported API in preparation for an R Journal package paper.
- Extends
as_igraph()to currentdgraphsgraph objects while preserving support for legacy basin graph objects.
From NEWS.md in the release
Install
Health
- OK13 OKNow
- OK6 OK2026-08-21
Documentation
- Help pages
- 115 (4 internal)includes a package overview page
- Examples that run
- 100%104 run in a plain check
- Exported functions with examples
- 100%
- Documented parameters
- 96%
- Return-value docs
- 100%
- Help pages citing references
- 1%
Downloads
Repository
Stars over time
Forks over time
Commits over time
Commit identities over time
7 development-tooling and community-health practices detected across 4 families in the upstream repository
Checks run against github.com/pgajer/dgraphs on 2026-10-22.
The R CMD check workflow runs on Linux and Windows, and on R-devel
GitHub Pages site last deployed 2026-10-01 · The repository has a site deploy workflow
Dependencies
Installing dgraphs adds 12 packages (9 with compiled code, 12 MB of source tarballs). Heaviest: igraph 4.8 MB, Rcpp 1.8 MB, RcppEigen 1.7 MB.
Code & Tests
People & History
Maintainer since 0.1.0 (2026)
Pick two releases to compare their code metrics.
- 0.2.0Latest2026-08-31 · current release · diff ↗ ·
removed 11 exports
adjlist.to.igraph, calculate.edit.distances, cpp.create.rknn.graphs, create.adaptive.radius.graph, create.distance.plot, create.radius.graph, dist.to.knn, euclidean.distance, graph.adj.mat, graph.edit.distance, load.graph.data - 0.1.02026-08-20
- RR 4.6.0 released · 2026-04-24
Package metadata
- First published
- 2026-08-20
- Total releases
- 2 / 1 yrs
- License
- MIT + file LICENSE OSI
- Copyright
- See inst/COPYRIGHTS in the package
- Minimum R
- ≥ 4.1.0
- Download size
- 566 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("dgraphs")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-23, which the citation names so these numbers can be found later. More on citing and the projects behind them.