Top 4 Python Igraph Projects
-
awesome-community-detection
A curated list of community detection research papers with implementations.
-
pygraphistry
PyGraphistry is a Python library to quickly load, shape, embed, and explore big graphs with the GPU-accelerated Graphistry visual graph analyzer
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
grand
Your favorite Python graph libraries, scalable and interoperable. Graph databases in memory, and familiar graph APIs for cloud databases.
Extra fun: We find most enterprise/gov graph analytics work only requires 1-2 attributes to go along with the graph index, and those attributes often are already numeric (time, $, ...) or can be dictionary-encoded as discussed here (categorical, ID, ...)... so even 'tough' billion scale graphs are fine on 1 gpu.
Early, but that's been the basic thinking into our new GFQL system: slice into the columns you want, and then do all the in-GPU traversals you want. In our V1, we keep things dataframe-native include the in-GPU data representation, and are already working on the first extensions to support switching to more graph-native indexing for steps as needed.
Ex: https://github.com/graphistry/pygraphistry/blob/master/demos...
You may like my Netgraph library [1], which is a Python library that aims to complement networkx, igraph, and graph-tool with publication-quality visualisations.
Netgraph implements numerous node layout algorithms and several edge routing routines. Uniquely among Python alternatives, it handles networks with multiple components gracefully (which otherwise break most node layout routines), and it post-processes the output of the node layout and edge routing algorithms with several heuristics to increase the interpretability of the visualisation (reduction of overlaps between nodes, edges, and labels; edge crossing minimisation and edge unbundling where applicable). The highly customisable plots are created using Matplotlib, and the resulting Matplotlib objects are exposed in an easily queryable format such that they can be further manipulated and/or animated using standard Matplotlib syntax. Finally, Netgraph also supports interactive changes: with the InteractiveGraph class, nodes and edges can be positioned using the mouse, and the EditableGraph class additionally supports insertion and deletion of nodes and edges as well as their (re-)labelling through standard text-entry.
[1] https://github.com/paulbrodersen/netgraph
Project mention: Show HN: In-memory graph "database" with NetworkX and openCypher | news.ycombinator.com | 2023-10-30Cypher is a super useful language for querying graph structures, but sometimes it's overkill to load a tiny graph into Neo4j or memgraph. We wrote this tool to act as an abstraction layer so you can query in-memory graph data -- or, using [Grand](https://github.com/aplbrain/grand), rewrite Cypher queries to run on SQLite dbs or even other graph databases that don't support Cypher out of the box. Hoping it'll be helpful to those in the network theory, graph ML, and data science communities!
Index
What are some of the best open-source Igraph projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | awesome-community-detection | 2,266 |
2 | pygraphistry | 2,055 |
3 | netgraph | 642 |
4 | grand | 75 |
Sponsored