Graph Theory
General graph data structures, algorithms in Julia.
- Wikipedia : Graph Theory
- Julia Graphs organization.
Graph data types¶
- ivanslapnicar/Arrowhead.jl : Arrowhead and Diagonal-plus-rank-one Eigenvalue Solvers.
- JuliaCollections/AbstractTrees.jl : Abstract julia interfaces for working with trees.
- JuliaGraphs/Graphs.jl : An optimized graphs package for the Julia programming language.
- JuliaGraphs/GraphsExtras.jl : Additional functionality for
Graphs.jl
. - JuliaGraphs/MetaGraphs.jl :
Graphs.jl
data structures with multiple heterogeneous metadata. - JuliaGraphs/SimpleWeightedGraphs.jl : Edge-Weighted Graphs compatible with
Graphs.jl
- pszufe/SimpleHypergraphs.jl : A simple hypergraphs package for the Julia programming language.
- QuantumBFS/Multigraphs.jl : A multigraph extension of
Graphs.jl
. - scheinerman/SimpleGraphs.jl : A module for working with simple graphs (no loops, no multiple edges, no directed edges).
- simonschoelly/SimpleValueGraphs.jl : A
Graphs.jl
compatible package for graphs with multiple, homogeneous vertex, edge and graph metadata. - B4rtDC/MaxEntropyGraphs.jl : Julia implementation of maximum entropy graph models. JuliaCon 2024 video
File IO¶
- JuliaGraphs/GraphIO.jl : GraphIO provides support to
Graphs.jl
for reading/writing graphs in various formats. - JuliaGraphs/SNAPDatasets.jl :
Graphs.jl
-formatted graph files taken from the SNAP Datasets collection.
Graph algorithms¶
- aleph_star : Reinforcement learning with A* and a deep heuristic.
- Wikipedia: Graph algorithms
- chakravala/Dendriform.jl : Dendriform di-algebra algorithms to compute using Loday's arithmetic on groves of planar binary trees.
- chkwon/RobustShortestPath.jl : Robust Shortest Path Finder.
- dlfivefifty/NumericalRepresentationTheory.jl : representation theory of the symmetric group.
- JuliaGraphs/CommunityDetection.jl : Implements community detection for
Graphs.jl
. - JuliaGraphs/GraphDataFrameBridge.jl : Tools for interoperability between DataFrame objects and LightGraphs and MetaGraphs objects.
- JuliaGraphs/GraphsFlows.jl : Flow algorithms on top of
Graphs.jl
- JuliaGraphs/GraphsMatching.jl : Matching algorithms for
Graphs.jl
. - JuliaGraphs/MatrixNetworks.jl : Graph and Network algorithms.
- JuliaGraphs/NetworkLayout.jl : Layout algorithms for graphs and trees in pure Julia.
- JuliaSparse/SuiteSparseGraphBLAS.jl : Julia wrapper for SuiteSparse:GraphBLAS.
- mlewe/BlossomV.jl : An interface for the Blossom V perfect (graph) matching algorithm. (paid commercial license)
- mtfishman/ITensorNetworks.jl : general tools for working with higher-dimensional tensor networks based on ITensors.jl.
- oxinabox/LayeredLayouts.jl : Layered Layout Algorithms for Directed Acyclic Graphs (DAGs).
Visualizing Graphs¶
See also visualization.
- JuliaGraphs/GraphPlot.jl : Graph visualization for Julia.
- JuliaGraphs/VegaGraphs.jl : Graph visualization with
VegaLite.jl
. - JuliaPlots/GraphRecipes.jl : Graph-related recipes to be used with Plots.jl.