Vass
Vass

Reputation: 2820

good/flexible software for visualizing a dynamic network simulation

I would like to make a simulation of a constrained system indexed by time. This involves a network of agents/nodes that interact based on some logic/relationships. I would like to place the nodes on a grid 2D or 3D does not matter. I would like to have edges drawn between them, and text beside them. I would like to give the logic for the tags on the nodes and give indication of the states. In the style of simjava: simjava

But more based on mathematical simulations than software processes. Graphing tools would be useful etc. Any good recommendations? There is good software for visualizing data sets. Matlab's Simulink has a lot of complexity on non-discretec events, and is not as cartoon-like which is good for testing principle rather than analytics. Unless I am wrong and Simulink provides this

EDIT: A similar question asks about dynamic graphs stack overflow relevant question, it is an issue that does not seems to have any concrete solution except for customized solutions.

Upvotes: 1

Views: 466

Answers (3)

skyebend
skyebend

Reputation: 1109

If you want tools to actually do simulation plus viz, perhaps netlogo: https://ccl.northwestern.edu/netlogo/ if you just want to visualize links changing in time, perhaps Gephi: http://gephi.github.io/ or the ndtv R package: http://cran.r-project.org/web/packages/ndtv/index.html

Upvotes: 0

abalakin
abalakin

Reputation: 827

May be MathGL (cross-platform GPL plotting library) can meet yours requirement. Graph visualization is not the main goal of MathGL. However, it have a primitives (rectangles, lines, marks, curved text and so on) which allow one to make a graph. Also it can handle data in 3D. And it allows interaction -- it return the object Id at selected position (at mouse click).

Upvotes: 1

sfinnie
sfinnie

Reputation: 9952

hmm. Not sure if I'm on the right track or not, but have you looked at graphviz? It'll render graphs (including auto-layout with various different algorithms). There are bindings from various languages, e.g. pydot for python. If you need graph analysis algorithms (e.g. shortest path) there's also pygraphlib.

There are alternatives to graphviz, e.g. protovis / infovis. Both are javascript based, provide force-directed layout, and render in the browser.

Apologies if I misunderstood question, hope that helps.

Upvotes: 1

Related Questions