Python converting ndarrays into graph

graph, numpy, python

Solution

networkx solution:

The `draw` nx.function: takes in a optional second argument of the positions:

import numpy as np
import networkx as nx
import pylab as plt

A = np.array([[0,0,1,0],[1,0,0,0],[1,0,0,1],[1,0,0,0]])
G = nx.DiGraph(A)

pos = [[0,0], [0,1], [1,0], [1,1]]
nx.draw(G,pos)
plt.show()

Problem

So I'm currently working on this Python program, which basically computes displacement of nodes in a given undirected graph via some algorithm. My output consists of an adjacency matrix in form of a numpy ndarray and another numpy ndarray holding the coordinates(2D) of each node. Ive been looking into ways of plotting the resulting Graph and stumbled across igraph and NetworkX. I did not use them yet, but I know they can convert an adjacency matrix into a graph, in this case I would not be using my coordinates though. So I wonder, how can I use both for graphical representation of my graph? I could imagine I would have to use both arrays to create a different kind of object, which itself can be converted by NetworkX/igraph.

Original source