Package: dgraphs 0.3.0.9000

dgraphs: Data-Derived Graph Construction Utilities

Constructs data-derived graphs from numerical observations using mutual, shared-neighbor, intersection, geodesic, radius, adaptive-radius, minimum-spanning-tree completion, and optional iterated adaptive neighborhood methods. Provides graph conversion, pruning, diagnostics, spectral embedding, endpoint detection, and path utilities, with reproducible synthetic geometries and point sampling for graph and embedding experiments. 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>.

Authors:Pawel Gajer [aut, cre], Sunil Arya [ctb], David M. Mount [ctb], University of Maryland [cph], Yixuan Qiu [ctb, cph], Anna Araslanova [ctb, cph], Gael Guennebaud [ctb, cph], Jitse Niesen [ctb, cph], Netherlands eScience Center [ctb, cph], Danil Kirsanov [ctb, cph]

dgraphs_0.3.0.9000.tar.gz
dgraphs_0.3.0.9000.zip(r-4.7-x86_64)dgraphs_0.3.0.9000.zip(r-4.7-arm64)dgraphs_0.3.0.9000.zip(r-4.6-x86_64)dgraphs_0.3.0.9000.zip(r-4.6-arm64)dgraphs_0.3.0.9000.zip(r-4.5-x86_64)
dgraphs_0.3.0.9000.tgz(r-4.6-x86_64)dgraphs_0.3.0.9000.tgz(r-4.6-arm64)dgraphs_0.3.0.9000.tgz(r-4.5-x86_64)dgraphs_0.3.0.9000.tgz(r-4.5-arm64)
dgraphs_0.3.0.9000.tar.gz(r-4.7-arm64)dgraphs_0.3.0.9000.tar.gz(r-4.7-x86_64)dgraphs_0.3.0.9000.tar.gz(r-4.6-arm64)dgraphs_0.3.0.9000.tar.gz(r-4.6-x86_64)
dgraphs_0.3.0.9000.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
dgraphs/json (API)

# Install 'dgraphs' in R:
install.packages('dgraphs', repos = c('https://pgajer.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/pgajer/dgraphs/issues

Pkgdown/docs site:https://pgajer.github.io

Uses libs:
  • c++– GNU Standard C++ Library v3

On CRAN:

Conda:

cpp

6.82 score 1 stars 1 packages 49 scripts 375 downloads 117 exports 16 dependencies

Last updated from:9c17cbea5c. Checks:12 OK, 3 NOTE. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-arm64OK299
linux-devel-x86_64OK326
source / vignettesOK467
linux-release-arm64OK280
linux-release-x86_64OK319
macos-release-arm64OK403
macos-release-x86_64OK669
macos-oldrel-arm64NOTE395
macos-oldrel-x86_64NOTE565
windows-devel-arm64OK439
windows-devel-x86_64OK506
windows-release-arm64OK470
windows-release-x86_64OK424
windows-oldrel-x86_64NOTE374
wasm-releaseOK270

Exports:as_igraphbuild.ian.backendbuild.iknn.graphs.and.selectkcompare.adj.listscompare.pathscompute.geodesic.statscompute.graph.diametercompute.graph.distancecompute.graph.endpoint.scorescompute.graph.summary.pmfcompute.graph.summary.stabilitycompute.stability.metricscompute.vertex.geodesic.statsconvert.adjacency.list.to.adjacency.matrixconvert.adjacency.to.edge.matrixconvert.to.undirectedconvert.weighted.adjacency.matrix.to.adjacency.listcount.edgescreate.cknn.graphcreate.cmst.graphcreate.fermat.sknn.graphcreate.geodesic.iknn.graphcreate.graphcreate.grid.graphcreate.ian.graphcreate.iknn.graphscreate.iterated.iknn.graphscreate.maximal.packingcreate.mknn.graphcreate.mknn.graphscreate.path.graphcreate.plm.graphcreate.rknn.graphcreate.rknn.graphscreate.single.iknn.graphcreate.sknn.graphcreate.sknn.graphscreate.subgraphcreate.threshold.distance.graphdetect.graph.endpointsdetect.local.extremadgraphedge.diffedge.lengths.synthetic.geometryembed.quadform.surfaceembed.synthetic.geometryexplore.graphsextract.trajectory.edge.lengthsfermat.distancesfermat.knngeodesic.core.endpointsgeodesic.diskgeodesic.knngeodesic.knnxget.shortest.pathgraph.adjacencygraph.connected.componentsgraph.edge.attributegraph.edgesgraph.embeddinggraph.geodesic.distancesgraph.lengthsgraph.ordergraph.spectral.embeddinggraph.spectrumgraph.stagesgraph.summary.divergenceidentical.vertex.set.weighted.graph.similarityisometry.distance.correlationsisometry.distortion.quantilesisometry.geodesic.diagnosticsisometry.rel.abs.errorisometry.rel.rms.errorisometry.scalejensen.shannon.divergencejoin.graphsminh.limitnerve.graphpath.distpath.lengthquadform.gradientquadform.metricread.graph.benchmarkregister.graph.projectremove.knn.outliersrm.self.loopssample.synthetic.geometrysubdivide.pathsummarize.isometry.deviationsynthetic.circlesynthetic.helixsynthetic.point.line.junctionsynthetic.quadformsynthetic.sampling.clusteredsynthetic.sampling.dirichlet.zerossynthetic.sampling.gapped.uniformsynthetic.sampling.grid.intervalsynthetic.sampling.quadform.labsynthetic.sampling.truncated.normalsynthetic.sampling.uniform.boxsynthetic.sampling.uniform.disksynthetic.sampling.uniform.intervalsynthetic.sampling.uniform.rectanglesynthetic.simplexsynthetic.sphere.capsynthetic.stratifiedsynthetic.stratum.pointsynthetic.stratum.rectanglesynthetic.stratum.segmentsynthetic.torus.patchsynthetic.trefoilvalidate.maximal.packingvalidate.synthetic.geometryvalidate.synthetic.samplingverify.maximal.packingverticeswgraph.prune.long.edges

Dependencies:BHclicpp11FNNglueigraphlatticelifecyclemagrittrMatrixnloptrpkgconfigRcppRcppEigenrlangvctrs

Fermat distances and their supporting graphs on surfaces
Generate the observations | Distances and the path graph | Compare with surface geodesics | Inspect supporting edges in three dimensions | Chord lengths before and after scaling | Paraboloid reference-method comparison | Follow-up: sampling density, intermediate powers and stronger curvature

Last update: 2026-10-01
Started: 2026-10-01

Density-sensitive paths with Fermat distances
The estimator and its graph restriction | Noisy circles with different sampling densities | Does a sparse graph give the same distances? | Two noisy arms with diffuse background points | How much does the first seed conceal? | Complete-graph distances without storing the graph | Sparse metric MDS with consistent Fermat targets | What the theory does and does not establish | Exact nearest neighbors without all-pairs distances | References

Last update: 2026-10-01
Started: 2026-09-30

Finding your way around dgraphs
Choose a starting point | A first graph | Constructing a standard graph | Conventions that affect your choice | A common graph object | Neighborhood sizes and edge quantities | Connectivity, stages and cost | Distances and stored routes | Positive spectra and spectral coordinates | Plotting a graph and reusing its layout | Reuse an expensive computation | Function catalog | Graph construction and parameter sequences | Basic graphs and representation | Connectivity and graph editing | Paths and distances | Edge lengths and pruning | Diagnostics, endpoints and packing | Spectral methods and graph display | Synthetic geometry and embedding | Point sampling | Interactive graph reconstruction explorer | Object workflows and method help | Finding more help | Detailed help for this build

Last update: 2026-10-01
Started: 2026-09-14

IAN graphs: setup and interpreting results
Build the optional backend once | Construct and inspect a graph | Numerical behavior and incomplete results | Resources and qualification

Last update: 2026-09-24
Started: 2026-09-24

Synthetic geometry and point sampling
A curve: angles, coordinates and a graph | A quadratic surface: parameter sampling and embedding | Chords, lifted segments and shortest paths | Random frames and single points | Explore quadratic geometry in 3D | Shape: flat, bowl, dome, cylinder, saddle and mixed terms | Sampling: domain, density, gaps and ordering | Placement: canonical, supplied and random frames, with offsets | Dimensions: a curve, multiple heights, a 3D latent domain and one point | Differential geometry: gradient, metric and area element | Inspect the graph and a lifted latent segment | A simplex with a lower-dimensional face | Choosing compatible sampling specifications | Reproducibility and continuation | Opting into the current R stream | Next steps

Last update: 2026-09-15
Started: 2026-09-14

Constructing and Diagnosing Data-Derived Graphs
Overview | Construct candidate graph families | Inspect a parameter sequence | Convert and inspect a selected graph | Diagnose geodesic fidelity | Practical guidance

Last update: 2026-09-14
Started: 2026-08-21

Readme and manuals

Help Manual

Help pageTopics
dgraphs: Data-Derived Graph Construction Utilitiesdgraphs-package dgraphs
Convert a dgraph to igraphas_igraph
Build the Optional IAN Backendbuild.ian.backend
Build iKNN Graphs and Select a Neighborhood Sizebuild.iknn.graphs.and.selectk
Compare Two Adjacency Listscompare.adj.lists
Compare Paths Across Hop Limitscompare.paths
Compute Geodesic Statistics for Grid Verticescompute.geodesic.stats
Compute a Weighted Graph Diametercompute.graph.diameter
Compute a Weighted Shortest-Path Distancecompute.graph.distance
Compute Graph Endpoint Scores from a 3D Embeddingcompute.graph.endpoint.scores
Compute a graph summary as a probability mass functioncompute.graph.summary.pmf
Compute graph-summary stability across a graph sequencecompute.graph.summary.stability
Compute Stability Metrics Across a Sequence of IkNN Graphscompute.stability.metrics
Compute Geodesic Statistics for a Single Grid Vertexcompute.vertex.geodesic.stats
Convert an Adjacency List to an Adjacency Matrixconvert.adjacency.list.to.adjacency.matrix
Convert an Adjacency List to an Edge Matrixconvert.adjacency.to.edge.matrix
Convert a Directed Adjacency List to an Undirected Adjacency Listconvert.to.undirected
Convert a Weighted Adjacency Matrix to Listsconvert.weighted.adjacency.matrix.to.adjacency.list
Count Edges in an Undirected Adjacency Listcount.edges
Compute a Continuous-kNN Graphcreate.cknn.graph
Construct a Minimal Spanning Tree (MST) Completion Graphcreate.cmst.graph
Create a graph-geodesic iKNN graphcreate.geodesic.iknn.graph
Create a Standard Graphcreate.graph
Create a Refined Graph with Approximately Uniform Edge Spacingcreate.grid.graph
Construct an Iterated Adaptive Neighborhood Graphcreate.ian.graph
Create intersection k-nearest neighbor graphs with dual pruningcreate.iknn.graphs
Create iterated graph-geodesic iKNN graphscreate.iterated.iknn.graphs
Create a Maximal Packing of Vertices in a Graphcreate.maximal.packing
Compute a Mutual k-Nearest Neighbor Graph with Weightscreate.mknn.graph
Create Multiple Mutual kNN Graphs with Geometric Pruningcreate.mknn.graphs
Construct Path Graphs Across Hop Limitscreate.path.graph
Create a Path Length Matrix Graph Structurecreate.plm.graph
Compute a Radius-kNN Graphcreate.rknn.graph
Compute Adaptive Radius-kNN Graphs Across k Valuescreate.rknn.graphs
Create a Single Intersection-weighted k-Nearest Neighbors Graphcreate.single.iknn.graph
Compute a Symmetric k-Nearest Neighbor Graphcreate.sknn.graph
Compute a Series of Symmetric k-Nearest Neighbor Graphscreate.sknn.graphs
Extract an Induced Subgraphcreate.subgraph
Create a Threshold Distance Graphcreate.threshold.distance.graph
Detect Graph Endpoints from a 3D Embeddingdetect.graph.endpoints
Detect Local Extrema in a Graphdetect.local.extrema
Construct and Inspect an Undirected Metric Graphdgraph graph.adjacency graph.edge.attribute graph.edges graph.lengths graph.order graph.stages
Compute Edge Difference Between Two Graphsedge.diff
Exact latent-segment lengths under a synthetic geometryedge.lengths.synthetic.geometry
Lift coordinates onto a quadratic surface using Geometry Lab arithmeticembed.quadform.surface
Embed latent coordinates through a synthetic geometryembed.synthetic.geometry
Open the Graph Reconstruction Explorerexplore.graphs
Extract Edge Lengths Along a Graph Pathextract.trajectory.edge.lengths
Compute Complete or Graph-Restricted Sample Fermat Distancesfermat.distances
Find Exact Sample Fermat Nearest Neighborscreate.fermat.sknn.graph fermat.knn
Select Graph Endpoints by Core-Eccentricity Geometrygeodesic.core.endpoints
Geodesic Disk in a Weighted Graphgeodesic.disk
Find Geodesic Neighbors Within a Point Cloudgeodesic.knn
Find Geodesic Neighbors from Grid Queries to Observationsgeodesic.knnx
Get Shortest Path Between Two Verticesget.shortest.path
Assign Vertices to Connected Componentsgraph.connected.components
Embed Graph in 2D or 3D Spacegraph.embedding
Compute Graph Geodesic Distancesgraph.geodesic.distances
Embed a Connected Graph Using its Positive Laplacian Spectrumgraph.spectral.embedding
Compute the Positive Spectrum of an Unweighted Graph Laplaciangraph.spectrum
Compute divergence between two graphs using a selected graph summarygraph.summary.divergence
Weighted Graph Distance Between Graphs with Identical Vertex Setsidentical.vertex.set.weighted.graph.similarity
Inspect a Path Graphinspect.path.graph print.path.graph summary.path.graph
Inspect a Collection of Hop-Constrained Path Graphsinspect.path.graph.series print.path.graph.series summary.path.graph.series
Inspect a Synthetic Geometry Sampleinspect.synthetic_geometry_sample print.summary.synthetic_geometry_sample print.synthetic_geometry_sample summary.synthetic_geometry_sample
Compute Distance Preservation Correlationsisometry.distance.correlations
Compute Multiplicative Distortion Quantilesisometry.distortion.quantiles
Compute Geodesic-Isometry Diagnosticsisometry.geodesic.diagnostics
Compute Relative Absolute Isometry Errorsisometry.rel.abs.error
Compute Relative RMS Isometry Errorisometry.rel.rms.error
Compute the Optimal Isometry Calibration Scaleisometry.scale
Jensen-Shannon Divergencejensen.shannon.divergence
Join Two Adjacency-List Graphsjoin.graphs
Find the Minimum Hop Limit for Path Existenceminh.limit
Construct the Nerve Graph of a Covernerve.graph
Plot the distribution of overlap valuesoverlap.distribution.plot
Normalized Cumulative Distance Along a Vertex Pathpath.dist
Compute Euclidean Path Lengthpath.length
Plot method for build_iknn_graphs_and_selectkplot.build_iknn_graphs_and_selectk
Plot method for cst_graph_mixing_statsplot.cst_graph_mixing_stats
Plot a dgraph with Reusable Coordinatesplot.dgraph
Plot Geodesic Statisticsplot.geodesic_stats
Plot Method for IkNN Stability Metricsplot.iknn_stability_metrics
Plot Diagnostics for Intersection k-NN Graph Analysisplot.IkNNgraphs
Plot method for vertex_geodesic_stats objectsplot.vertex_geodesic_stats
Print method for build_iknn_graphs_and_selectkprint.build_iknn_graphs_and_selectk
Print an Undirected Graphprint.dgraph
Print method for geodesic_stats objectsprint.geodesic_stats
Print Graph Constructor Resultsprint.adaptive_radius_graph print.cknn_graph print.graph.constructors print.radius_graph print.rknn_graphs print.sknn_graph print.sknn_graphs
Print Method for knn.outliers Objectsprint.knn.outliers
Print Method for Maximal Packing Resultsprint.maximal_packing
Print Method for mknn_graph Objectsprint.mknn_graph
Print Method for mknn_graphs Objectsprint.mknn_graphs
Print Method for MST Completion Graph Objectsprint.mst_completion_graph
Print Method for Packing Validation Resultsprint.packing_validation
Print a Path-Length-Metric Graphprint.path.graph.plm
Print Method for summary.knn.outliers Objectsprint.summary.knn.outliers
Print Summary of MST Completion Graphprint.summary.mst_completion_graph
Evaluate gradients of all quadformsquadform.gradient
Evaluate the induced metric of a quadform geometryquadform.metric
Read a Saved Graph Reconstruction Benchmarkread.graph.benchmark
Remember a Graph Explorer Projectregister.graph.project
Remove Outliers from a State Space Using k-Nearest Neighborsremove.knn.outliers
Remove Self-Loops from an Adjacency Listrm.self.loops
Realize points on a synthetic geometry with explicit random-state controlsample.synthetic.geometry
Subdivide a Path into Arc-Length Spaced Pointssubdivide.path
Summarize Deviation from Isometrysummarize.isometry.deviation
Summary method for geodesic_stats objectssummary.geodesic_stats
Summarize IkNN Graph Objectsummary.IkNN
Summarize an iknn_graphs Objectsummary.iknn_graphs
Summarize Iterated Intersection k-NN Graphssummary.iterated_iknn_graphs
Summary Method for knn.outliers Objectssummary.knn.outliers
Summarize Local Extremaprint.summary.local_extrema summary.local_extrema
Summary Method for mknn_graphs Objectssummary.mknn_graphs
Summary Method for MST Completion Graph Objectssummary.mst_completion_graph
Summarize an rknn_graphs Objectsummary.rknn_graphs
Summary method for vertex_geodesic_stats objectssummary.vertex_geodesic_stats
Specify a circle geometrysynthetic.circle
Specify a helix geometrysynthetic.helix
Specify a point-line junctionsynthetic.point.line.junction
Specify a quadform geometrysynthetic.quadform
Clustered sampling specificationsynthetic.sampling.clustered
Dirichlet sampling with structural zerossynthetic.sampling.dirichlet.zeros
Gapped-uniform sampling specificationsynthetic.sampling.gapped.uniform
Deterministic interval-grid sampling specificationsynthetic.sampling.grid.interval
Versioned quadratic-surface sampling used by Geometry Labsynthetic.sampling.quadform.lab
Truncated-normal sampling specificationsynthetic.sampling.truncated.normal
Uniform-box sampling specificationsynthetic.sampling.uniform.box
Uniform-disk sampling specificationsynthetic.sampling.uniform.disk
Uniform-interval sampling specificationsynthetic.sampling.uniform.interval
Uniform-rectangle sampling specificationsynthetic.sampling.uniform.rectangle
Specify a simplex geometrysynthetic.simplex
Specify a sphere-cap geometrysynthetic.sphere.cap
Assemble a stratified geometrysynthetic.stratified
Specify a point stratumsynthetic.stratum.point
Specify a rectangle stratumsynthetic.stratum.rectangle
Specify a line-segment stratumsynthetic.stratum.segment
Specify a torus-patch geometrysynthetic.torus.patch
Specify a trefoil-knot geometrysynthetic.trefoil
Validate a Maximal Packingvalidate.maximal.packing
Validate a geometry specification or its latent coordinatesvalidate.synthetic.geometry
Validate a point-sampling specification and geometric supportvalidate.synthetic.sampling
Verify Maximal Packing Created by create.maximal.packingverify.maximal.packing
Extract Vertices from a Graph Resultvertices
Extract a Local-Extremum Neighborhoodvertices.local_extrema
Prune Long Edges in a Weighted Graphwgraph.prune.long.edges