How to create Gephi network graphs from Python?

I have just found out about GephiStreamer. https://pypi.python.org/pypi/GephiStreamer

Using this package one can send instructions from python to Gephi to create nodes and edges in Gephi.

# Create a node with a custom_property
node_a = graph.Node("A",custom_property=1)

# Create edge 
edge_ab = graph.Edge(node_a,node_b,custom_property="hello")
stream.add_edge(edge_ab)

Similarly I want to do everything in Gephi through Python. Here is what I typically do.

ex:

steps:

  1. load nodes
  2. load edges
  3. calculate betweeness centrality
  4. change the size/color of nodes as per their centrality scores
  5. change the graph layout (such as forceatlas2)
  6. give the output graph

Below is the output I have got manually, but I want to produce the same by sending instructions from python to Gephi. Documentation doesn’t tell anything beyond creating nodes, edges and graphs.

I have also found out about NetworKit. https://networkit.iti.kit.edu/data/uploads/docs/NetworKit-Doc/python/html/gephi.html

This is slightly better than gephistramer, but this requires python 3.4 or higher and most of the packages like pandas, numpy or sickit are in 2.7.

also Is there a way to send the file I have created in gephi back to python.

Please suggest.

PS: I have edited the entire question details so that it’s easier to understand now (hopefully).

Leave a Comment