https://github.com/haaziq386/motifscale
MotifGraphLab is a Python framework for generating large graphs from 4‑node motifs. It computes scalable metrics (diameter, clustering, path length, triangles) with exact and approximate methods.
https://github.com/haaziq386/motifscale
clustering-coefficient complex-networks data-science diameter-estimation graph-analysis graph-generation graph-theory motifs network-science networkx python research-tool scalability simulation
Last synced: about 2 months ago
JSON representation
MotifGraphLab is a Python framework for generating large graphs from 4‑node motifs. It computes scalable metrics (diameter, clustering, path length, triangles) with exact and approximate methods.
- Host: GitHub
- URL: https://github.com/haaziq386/motifscale
- Owner: Haaziq386
- Created: 2025-12-22T12:45:07.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-12-22T12:49:58.000Z (6 months ago)
- Last Synced: 2025-12-23T23:46:44.596Z (6 months ago)
- Topics: clustering-coefficient, complex-networks, data-science, diameter-estimation, graph-analysis, graph-generation, graph-theory, motifs, network-science, networkx, python, research-tool, scalability, simulation
- Language: Python
- Homepage:
- Size: 8.79 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Motif Graph Generator — Quick Start
Course Project: CSL-519 Social Network Analysis
Instructor: Prof. Pradumn K. Pandey
Small README to run the Python script that generates motif-based graphs and reports metrics.
## Requirements
* Python 3.8+ recommended
* Install dependencies:
```bash
pip install networkx numpy scipy tqdm matplotlib
```
## Run
From the directory containing `BTech_22114055_Haaziq.py`:
```bash
python BTech_22114055_Haaziq.py
```
The script will:
* Generate graphs for sizes defined in the `sizes` list in the `if __name__ == "__main__"` block.
* Print aligned results (edges, diameter, path length, triangles, clustering, motif proportions).
## Quick edits
Open the script and edit the following in the `__main__` block:
* `sizes` — list of node counts to run.
* `edges_for_size` — target number of edges per size.
* `motif_fracs` — desired motif proportions (must map to `MOTIF_ORDER`).
* `runs_map` — number of runs to average per size (use `1` for very large sizes).
## Notes
* Large runs (50k, 100k) may take significant memory/time. Use `runs_map` to reduce repetitions.