Explore saved data-geodesic graph reconstruction benchmarks using manual graph selection, metric-based selection, saved layouts and parameter scans. This is the maintained replacement for the dggraphui application.
Usage
explore.graphs(
project = NULL,
launch = TRUE,
host = "127.0.0.1",
port = getOption("shiny.port"),
launch.browser = interactive(),
...
)Arguments
- project
Optional benchmark directory, benchmark manifest file, or name previously stored by
register.graph.project(). When omitted, the app opens a project selector. No dataset is loaded or fitted automatically.- launch
If
TRUE, run the application; ifFALSE, return its Shiny application object without starting a server.- host
Interface on which to listen; defaults to the local computer.
- port
Optional port passed to
shiny::runApp().- launch.browser
Whether to open the browser when launching.
- ...
Further arguments to
shiny::runApp().
Value
When launch = FALSE, a shiny.appobj; otherwise the result of
shiny::runApp(), invisibly.
Details
The optional packages shiny, bslib, plotly and digest are required only for the explorer. The optional grip package is needed only when explicitly generating a missing weighted layout. Opening a project reads saved results; it does not reconstruct graphs, fit layouts or overwrite benchmark assets. Newly generated layouts are stored in a separate dgraphs user cache.
Project registration stores locations in the user's dgraphs data directory,
outside the installed package. Set options(dgraphs.projects_dir = ...)
to choose another catalog directory. Set
options(dgraphs.graph_explorer_cache_dir = ...) to choose the layout cache.
The default display preserves original coordinates and equal x/y/z units. Optional centering with a single scale factor preserves proportions. Per-axis normalization is labeled as distorting proportions. The displayed edge count discloses thinning above 4000 edges; saved metrics always use the complete graph and are never recomputed by display controls.
Choose Open circle demo in the app, or use the installed project below. Its two chord-weighted graphs use 12 equally spaced unit-circle points. Increasing k from 2 to 4 introduces shortcuts relative to exact shorter circle arcs. Layouts and metrics are already saved; no fitting is needed.
Examples
if (interactive() && all(vapply(c("shiny", "bslib", "plotly", "digest"),
requireNamespace, logical(1), quietly = TRUE))) {
demo <- system.file("extdata", "graph-explorer-demo", package = "dgraphs")
explore.graphs(demo)
}