View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
MATLAB - GraphViz interface

4.2 | 16 ratings Rate this file 34 Downloads (last 30 days) File Size: 15.6 KB File ID: #4518 Version: 1.0

MATLAB - GraphViz interface


Leon Peshkin (view profile)


23 Feb 2004 (Updated )

Interface GraphViz graph layout and MATLAB user interface power.

| Watch this File

File Information

Feb 2004 Massachusetts Institute of Technology, AI Lab
MATLAB <-> GraphViz by Dr. Leon Peshkin: pesha @ |

this is a README file for `ad hoc' MATLAB package created to interface AT&T GraphViz graph layout and MathWorks MATLAB user Interface powers. Please make sure you have both MATLAB and GraphViz properly installed on your system. The package works on Unix and even on Windows. Use at your own risk.

README - this file
graph_to_dot.m - Creates a GraphViz formated file from a graph given by an adjacency matrix.
dot_to_graph.m - Extracts an adjacency matrix, node labels, and layout from a GraphViz file.
graph_draw.m - Draws a graph in MATLAB with a given layout
  make_layout.m - used to do a lame layout in case no layout is fed to graph_draw
draw_dot.m - a sample code illustrating use of package functions.
                  draws a graph defined by adjacency matrix, by
                    -first converting it to a GraphViz file (graph_to_dot)
                    -then calling NEATO of GraphViz to do a layout
                    -then importing layout file back into Matlab (dot_to_graph)
                    -finally calling graph_draw to display the layout
sample_click.m - an auxiliary sample code which allows to right-mouse-click on the nodes of
                  a graph to call a dummy function currently just printing that node's label
my_setdiff.m - my version of setdiff() which works much faster


This file inspired Matlab Graph Viz Layout Importer.

MATLAB release MATLAB 6.1 (R12.1)
Other requirements GraphViz from AT&T
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (18)
15 Feb 2017 Kim Jaekwan

31 Oct 2011 Wilmer

Wilmer (view profile)

I try to run sample_click.m, but I have the error:
??? Error: File: sample_click.m Line: 7 Column: 1
Function definitions are not permitted in this context.


Comment only
20 Oct 2010 Jonathan C. Lansey

??? Undefined function or variable 'range'.
I replaced range with max(x)-min(x) and i worked!

17 Apr 2010 Shicai Yang

[node_pos] = sscanf(line(pos_pos:length(line)), ' pos = "%f,%f"')';

it does work. thank you.

02 Mar 2010 Marco Canini

I found a bug on line 92 of dot_to_graph.m. The original uses %d in the sscanf but it should be like this:
[node_pos] = sscanf(line(pos_pos:length(line)), ' pos = "%f,%f"')';

26 Sep 2008 Mark Bolan

Matlab keeps indicating error: neato command not found. How do I resolve this issue?

Comment only
19 Sep 2008 Valentina Rossetti

I was just looking for something like that - thank you, it's very nice!

29 Jun 2008 Yuri Medvedev

Highly professional work.

30 Apr 2008 Michael Jachan

i rely on it :)

12 Dec 2006 Stephen Cowen

Good. Definitely Beta, but good. Would be nice if it had a demo script that would generate some sample graphs to illustrate the functions.

16 Feb 2006 son hong


10 May 2005 Jing Tang

excellent work! I will use it in my project..

05 Apr 2005 Etienne Lefebvre

23 Nov 2004 S├ębastien Vast

Very interesting tools but lack of certain
features for my usage in biochemical network
But it is easy to add these

09 Oct 2004 Koni Wolka

I wish this came as a toolbox from Matlab!
Great job!

02 Apr 2004 Nick Henderson

I have been using the tool to visualize gene networks. I found and fixed a small bug in graph_to_dot. I have already emailed the author. But, for the time being you may use this link:

Other than that, I am a big fan of Graphviz and the matlab interface!

29 Mar 2004 Ben Zana


28 Feb 2004 Nick Valuy

long awaited tool, must be a standard distr.

13 Apr 2004

arc lables; other minor changes
like isolated nodes.

Contact us