flowchart LR
A["1 Import or Generate"] --> B["2 Analyze"]
B --> C["3 Lay Out"]
C --> D["4 Visualize"]
D --> E["5 Render & Export"]
The end-to-end workflow
Whatever the data source, a SciGraphs project follows the same five-stage pipeline. This page is the conceptual backbone; each stage links to the panels that implement it.
1. Import or generate a graph
Load a file or database, download an OSMnx network, build an urban morphology graph, or pull a SuiteSparse matrix. Source detection and column mapping are handled in the Data panel; spatial sources have their own tabs (OSMnx, City2Graph).
The result is a single Blender object carrying the graph as mesh topology (vertices = nodes, edges = edges) plus custom properties such as num_nodes, num_edges, and is_directed.
2. Analyze
Compute centrality, community structure, statistics, and topology. Results are stored as named mesh attributes on the graph object, which become available to colour and size mappings later. See the Analysis panel and the Graph Algorithms panel.
This stage is optional but generally precedes visualization, because the metrics it produces inform the visual encoding.
3. Lay out
Arrange nodes with any of the 2D/3D force-directed, spectral, geometric, or Graphviz layout algorithms — or skip layout entirely when the data carries intrinsic coordinates (geospatial, sparse-matrix). See the Layout & Positioning panel.
4. Visualize
Apply Geometry Nodes via Setup Visual, then drive node/edge colour and size from attributes using scientific colormaps and edge-style presets. See the Visualization panel.
5. Render & export
Render with Cycles or EEVEE, and export the graph (GEXF, GraphML, JSON, CSV, Pajek), node positions, or a statistics report. See the Export & Tools panel.
Reproducing the whole pipeline
SciGraphs can replay an entire pipeline — dataset, analysis, layout, visualization, render, and export — from a short declarative JSON or YAML file:
{
"meta": { "title": "complex_demo", "seed": 42 },
"dataset": { "source": "osmnx", "method": "PLACE", "query": "Burjassot, Valencia, Spain", "network_type": "drive" },
"analysis": { "metrics": ["degree", "betweenness"] },
"layout": { "algorithm": "YIFAN_HU", "scale": 8.0 },
"visual": { "node_color": "betweenness", "node_size": "degree", "colormap": "magma", "edge_style": "GEPHI_DEFAULT" }
}Each run emits a canonical specification, a provenance manifest (with input/output hashes and timing), and an execution log, so the same seed and inputs reproduce the same result. To author your own files, see Writing pipeline files for the full schema and the ops escape hatch that exposes every SciGraphs parameter. See also the Reproducibility panel and the reproducible-pipeline example.