Advanced NetworkX graph generation models implementing algorithms from mathematical papers.
Project description
NetworkX Arxiv Generators 
Advanced graph generation models for NetworkX, implementing algorithms from mathematical literature (with arxiv citations), and published in reputable peer-reviewed journals, or presented at established conferences, symposiums and seminars.
Current state
Currently the project is in a scaffolding state, with the first goal of generating uniform power law graphs as in Uniform generation of random graphs with power-law degree sequences. These results were presented at SODA '18: Proceedings of the Twenty-Ninth Annual ACM-SIAM Symposium on Discrete Algorithms .
To begin, this requires results from the seminal paper B.D. McKay and N.C. Wormald, Uniform generation of random regular graphs of moderate degree, J. Algorithms 11 (1990), 52–67.
Currently in progress, located in src/nx_arxivgen/generators/mckay_wormald.py .
Install
Once published:
pip install networkx-arxiv-generators
Quickstart
import networkx as nx
import matplotlib.pyplot as plt
from nx_arxivgen.generators.mckay_wormald import mckay_wormald_simple_graph, mckay_random_graph_encoding
test_deg_seq = [1, 1, 2, 3, 3, 2, 6, 6,7,8,6,1,2,3,4,5,6,7,8,9,10]
test = mckay_wormald_simple_graph(test_deg_seq, debug=True)
nx.draw_spring(test, with_labels=True)
plt.show()
sample_graph = nx.generators.binomial_graph(20, 0.5)
print(mckay_random_graph_encoding(sample_graph))
An example of a graph generated this way, with the degree sequence
[10, 1, 0, 4, 3, 3, 2, 1, 10, 8, 1, 9, 6, 0, 0, 1, 3, 3, 8, 9, 0, 8, 3, 10, 8, 6, 3, 7, 9, 4]
The nodes of degree 0 are 2, 13, 14 and 20.
Goals
- Faithful implementations of arxiv models with clear citations, existing in reputable publications.
- Deterministic seeding and reproducibility, wherever relevant by the context of the research paper.
- Tests, docs, and examples for each model.
Citing
If you use this package, please cite it. See CITATION.cff. Each model’s docstring cites its originating paper(s).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file networkx_arxiv_generators-0.1.1.tar.gz.
File metadata
- Download URL: networkx_arxiv_generators-0.1.1.tar.gz
- Upload date:
- Size: 12.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0779dd4a7c351eb603b62367c6af4721acaf819f97a801e8c4384574cb49fece
|
|
| MD5 |
ad03296494d89fea9cef1a81afeb95ba
|
|
| BLAKE2b-256 |
c01f574f90c17a78cdf6cb19b2ecfeaacd65bd2ed6981dffb33238e91950c808
|
Provenance
The following attestation bundles were made for networkx_arxiv_generators-0.1.1.tar.gz:
Publisher:
publish.yml on YanYablonovskiy/networkx-arxiv-generators
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
networkx_arxiv_generators-0.1.1.tar.gz -
Subject digest:
0779dd4a7c351eb603b62367c6af4721acaf819f97a801e8c4384574cb49fece - Sigstore transparency entry: 481368306
- Sigstore integration time:
-
Permalink:
YanYablonovskiy/networkx-arxiv-generators@31acbed8734e8e0d8365f3e026c89f3e23fdb4e0 -
Branch / Tag:
refs/tags/v0.1.11 - Owner: https://github.com/YanYablonovskiy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@31acbed8734e8e0d8365f3e026c89f3e23fdb4e0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file networkx_arxiv_generators-0.1.1-py3-none-any.whl.
File metadata
- Download URL: networkx_arxiv_generators-0.1.1-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03d027f8e5107a5766afd2459395459faa08d426f5fd4b5237db658541b68a27
|
|
| MD5 |
1d8036f656c7a98bf0f38d69adb21189
|
|
| BLAKE2b-256 |
e9fc1c3a7aef6f35899d383768cc7ed9edea2026a98b3ae1b54d6849b1e625a3
|
Provenance
The following attestation bundles were made for networkx_arxiv_generators-0.1.1-py3-none-any.whl:
Publisher:
publish.yml on YanYablonovskiy/networkx-arxiv-generators
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
networkx_arxiv_generators-0.1.1-py3-none-any.whl -
Subject digest:
03d027f8e5107a5766afd2459395459faa08d426f5fd4b5237db658541b68a27 - Sigstore transparency entry: 481368328
- Sigstore integration time:
-
Permalink:
YanYablonovskiy/networkx-arxiv-generators@31acbed8734e8e0d8365f3e026c89f3e23fdb4e0 -
Branch / Tag:
refs/tags/v0.1.11 - Owner: https://github.com/YanYablonovskiy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@31acbed8734e8e0d8365f3e026c89f3e23fdb4e0 -
Trigger Event:
push
-
Statement type: