Citation and References
If you use py3plex in your research, please cite our work. Always include the primary journal article, add the conference paper when you mention design or scalability, and pair py3plex with the original algorithm papers whenever you rely on specific built-ins.
How to cite
Always cite the primary py3plex journal article.
Add the conference paper when you describe the algorithmic design, scalability, or evaluation setup.
When you use a specific built-in algorithm, cite both py3plex and the original method listed below.
Primary Citation
Recommended citation for py3plex (use this for any publication that uses the library, figures, pipelines, or datasets):
@Article{Skrlj2019,
author = {{\v{S}}krlj, Bla{\v{z}} and Kralj, Jan and Lavra{\v{c}}, Nada},
title = {Py3plex toolkit for visualization and analysis of multilayer networks},
journal = {Applied Network Science},
year = {2019},
volume = {4},
number = {1},
pages = {94},
doi = {10.1007/s41109-019-0203-7},
url = {https://doi.org/10.1007/s41109-019-0203-7}
}
Plain text:
Škrlj, B., Kralj, J., & Lavrač, N. (2019). Py3plex toolkit for visualization and analysis of multilayer networks. Applied Network Science, 4(1), 94. https://doi.org/10.1007/s41109-019-0203-7
Conference Paper
For the initial algorithmic design and scalability discussion (cite alongside the primary paper when you reference these contributions):
@InProceedings{Skrlj2019Conference,
author = {{\v{S}}krlj, Bla{\v{z}} and Kralj, Jan and Lavra{\v{c}}, Nada},
editor = {Aiello, Luca Maria and Cherifi, Chantal and Cherifi, Hocine
and Lambiotte, Renaud and Li{\'o}, Pietro and Rocha, Luis M.},
title = {Py3plex: A Library for Scalable Multilayer Network Analysis and Visualization},
booktitle = {Complex Networks and Their Applications VII},
year = {2019},
publisher = {Springer International Publishing},
address = {Cham},
pages = {757--768},
isbn = {978-3-030-05411-3},
doi = {10.1007/978-3-030-05411-3_60}
}
Algorithm-Specific Citations
When you rely on a specific algorithm implementation inside py3plex, cite both py3plex and the original method listed below. Use the paper that corresponds to the computation you run (community detection, embeddings, ranking, etc.).
Multilayer Modularity
For multilayer modularity optimization and multilayer community detection:
@Article{Mucha2010,
author = {Mucha, Peter J. and Richardson, Thomas and Macon, Kevin
and Porter, Mason A. and Onnela, Jukka-Pekka},
title = {Community structure in time-dependent, multiscale, and multiplex networks},
journal = {Science},
year = {2010},
volume = {328},
number = {5980},
pages = {876--878},
doi = {10.1126/science.1184819}
}
Node2Vec
For node embeddings learned via biased random walks:
@InProceedings{Grover2016,
author = {Grover, Aditya and Leskovec, Jure},
title = {node2vec: Scalable Feature Learning for Networks},
booktitle = {Proceedings of the 22nd ACM SIGKDD International Conference
on Knowledge Discovery and Data Mining},
year = {2016},
pages = {855--864},
doi = {10.1145/2939672.2939754}
}
Louvain Algorithm
For modularity-based community detection on single-layer projections:
@Article{Blondel2008,
author = {Blondel, Vincent D. and Guillaume, Jean-Loup and Lambiotte, Renaud
and Lefebvre, Etienne},
title = {Fast unfolding of communities in large networks},
journal = {Journal of Statistical Mechanics: Theory and Experiment},
year = {2008},
volume = {2008},
number = {10},
pages = {P10008},
doi = {10.1088/1742-5468/2008/10/P10008}
}
Infomap
For flow-based community detection (information-theoretic objective):
@Article{Rosvall2008,
author = {Rosvall, Martin and Bergstrom, Carl T.},
title = {Maps of random walks on complex networks reveal community structure},
journal = {Proceedings of the National Academy of Sciences},
year = {2008},
volume = {105},
number = {4},
pages = {1118--1123},
doi = {10.1073/pnas.0706851105}
}
MultiXRank
For multilayer node ranking based on random walk with restart:
@Article{Baptista2022,
author = {Baptista, Anthony and Gonzalez, Aur{\'e}lien and Baudot, Ana{\"\i}s},
title = {Universal multilayer network exploration by random walk with restart},
journal = {Communications Physics},
year = {2022},
volume = {5},
number = {1},
pages = {170},
doi = {10.1038/s42005-022-00937-9}
}
DeepWalk
For uniform random-walk node embeddings:
@InProceedings{Perozzi2014,
author = {Perozzi, Bryan and Al-Rfou, Rami and Skiena, Steven},
title = {DeepWalk: Online Learning of Social Representations},
booktitle = {Proceedings of the 20th ACM SIGKDD International Conference
on Knowledge Discovery and Data Mining},
year = {2014},
pages = {701--710},
doi = {10.1145/2623330.2623732}
}
Multilayer Network Theory
Foundational papers on multilayer networks (cite when you discuss the underlying theory, mathematical formulation, or compare with py3plex defaults):
@Article{Kivela2014,
author = {Kivel{\"a}, Mikko and Arenas, Alex and Barthelemy, Marc
and Gleeson, James P. and Moreno, Yamir and Porter, Mason A.},
title = {Multilayer networks},
journal = {Journal of Complex Networks},
year = {2014},
volume = {2},
number = {3},
pages = {203--271},
doi = {10.1093/comnet/cnu016}
}
@Article{Boccaletti2014,
author = {Boccaletti, Stefano and Bianconi, Ginestra and Criado, Regino
and del Genio, Charo I. and G{\'o}mez-Garde{\~n}es, Jes{\'u}s
and Romance, Miguel and Sendi{\~n}a-Nadal, Irene and Wang, Zhen
and Zanin, Massimiliano},
title = {The structure and dynamics of multilayer networks},
journal = {Physics Reports},
year = {2014},
volume = {544},
number = {1},
pages = {1--122},
doi = {10.1016/j.physrep.2014.07.001}
}
@Article{DeDomenico2013,
author = {De Domenico, Manlio and Sol{\'e}-Ribalta, Albert and Cozzo, Emanuele
and Kivel{\"a}, Mikko and Moreno, Yamir and Porter, Mason A.
and G{\'o}mez, Sergio and Arenas, Alex},
title = {Mathematical formulation of multilayer networks},
journal = {Physical Review X},
year = {2013},
volume = {3},
number = {4},
pages = {041022},
doi = {10.1103/PhysRevX.3.041022}
}
Complete Citation List
For additional algorithms, see Algorithm Selection Guide, which lists all major methods with their original references and DOIs.
Acknowledgments
Development and Contributors
py3plex is developed and maintained by:
Blaž Škrlj (lead developer) - Jožef Stefan Institute, Ljubljana, Slovenia
Jan Kralj (contributor) - Jožef Stefan Institute
Nada Lavrač (contributor) - Jožef Stefan Institute
Funding and Support
This work has been supported by:
Jožef Stefan Institute, Ljubljana, Slovenia
Slovenian Research Agency (research program P2-0103)
External Libraries
py3plex builds upon excellent open-source libraries:
NetworkX - Graph data structures and algorithms
NumPy - Numerical computing
SciPy - Scientific computing
Matplotlib - Visualization
scikit-learn - Machine learning utilities
Community Acknowledgments
We thank all contributors, users, and the broader network science community for feedback, pull requests, and issue reports.
License Information
py3plex is released under the MIT License.
MIT License
Copyright (c) 2019-2025 Blaž Škrlj, Jan Kralj, Nada Lavrač
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Note: Some bundled algorithms may have different licenses:
Infomap community detection code: AGPLv3
Louvain community detection: BSD-3-Clause
See LICENSE file in the repository for detailed license compatibility information.
Contact
For questions about citing py3plex or collaboration opportunities:
Email: blaz.skrlj@ijs.si
Usage in Publications
If you’ve used py3plex in your research and would like to be listed here, please:
Open an issue or pull request
Provide citation to your paper
Brief description of how py3plex was used
We maintain a list of publications using py3plex to showcase applications and build community.
See Also
Acknowledgements - Full acknowledgments
Algorithm Selection Guide - Complete algorithm citations with references
py3plex GitHub - Source code and issues
Applied Network Science paper - Primary publication