# Graph Theory Software with simple GUI

To the best of my knowledge I cannot find, on this site, any graph theory program resources.

I am looking for a program where I can draw nodes and edges and most importantly drag and drop vertices while keeping edges in tact. Does any such program exist? Can you provide me with resources to find such a program?

I want such a program, where I can drag and drop vertices, so that I may better visualize different isomorphisms of the same graph. I have a tough time seeing these sorts of things in my minds eye (although I'm trying to get better at it).

Although this appears as though it may be a duplicate, I want to stress that I am looking for a program with a simple GUI, where I can drag and drop vertices while keeping edges in tact. The "duplicate" question's answers provide an extensive of list of programs that can return information on a graph and allow you to programmatically generate graphs. I am not interested in this at the moment. I want an incredibly simple program.

Try using sage math via notebook http://sagenb.org and use the function graph_editor(). I think that's precisely what you want.

• That is exactly what I'm looking for. I can't quite figure out how to draw my own graphs yet, but i can manipulate the petersen graph exactly like I wanted to. Thank you!!! Jan 20, 2015 at 21:54

It sounds like Geogebra Geometry is exactly what you are looking for, at least for casual use on a small number of vertices. It lets you drop down points, connect segments between them, and move the points around freely (bringing the lines with them). It does it in a simple web-based interface, with no software installation needed.

I think it might require some work to automatically import a graph specified in a text file, as you'd want to do if you were working with something of moderate size. But for gathering intuition about small graphs (as the original question describes), Geogebra is pretty well-suited.

Click here for matlab graph mfile run this program in matlab command window to draw your any graph . define matrix A : adjacency matrix, where A(I,J) is nonzero (=1)if and only if there is an edge between points I and J.

for example : write in command window in matlab $$n = 9; t = 2*pi/n*(0:n-1);$$ $$A = round(rand(n));$$ $$xy = [cos(t); sin(t)]';$$ $$gplotdc(A,xy,'LineWidth',2,'MarkerSize',8);$$

in this example $A$ is $n\times n$ matrix. use your matrix instead of $A$ in above example.

– quid
Jan 20, 2015 at 18:35
• this is matlab mfile program for draw any graph. have you matlab software? Jan 20, 2015 at 18:38
• The above comment was an automatics comment. However, one is not supposed to give "link only" answers. Please explain here, as you partially did now, what resources you are linking to and how it will help to achieve the goal. In brief the answer should still be meaningful even in the event the link goes dead. You can edit your answer.
– quid
Jan 20, 2015 at 18:43
• It does not seem like this is what I'm looking for. Does this include the capability of dragging and dropping vertices through a GUI? As I understand it, I will not be able to do this sort of thing through matlab as I don't think the output will allow me to move vertices around with my mouse. Jan 20, 2015 at 19:21