5

Is there any software, preferably free, preferably supporting drag & drop, preferably supporting save & load to ease the creation diagrams like these?


(source: tikilive.org)

3
  • What kind of output image would you prefer?
    – Jongware
    Commented Mar 5, 2015 at 12:35
  • anything that can be easily converted/exported to jpg is fine.
    – hanshenrik
    Commented Mar 5, 2015 at 12:39
  • Found it (see my answer) - railroad diagram and here's how stackoverflow.com/questions/773371/… they're done.
    – Alec Teal
    Commented Mar 5, 2015 at 15:48

5 Answers 5

6

I would use yEd* not only does this tool draw these it also makes automatic layouts for your nodes. Other software would include MS Visio.

Example of a graph generated by yEd

Image 1: A image made with yEd illustrator combo (yEd made preliminary layout)

Another approach would be to use Graphviz, which could make your graphs 100% without your input from a data source easily.

Related post:


* yEd is free and can be run over web with java if needed.

3

I will probably get booed for saying this, but MS PowerPoint is actually good at this kind of diagrams.

The reason I suggest it is because a lot of people have it already installed in their systems, so you would not need to install anything else.

Power Point offers, basically, a subset of vector editing features (such as Adobe Illustrator's) with snapping features.

In relation with this kind of diagrams in particular, it allows you to create "text containers" with different shapes (diamonds, rectangles, circles, ...) and use different kinds of "connectors" to connect them. The connectors snap to the shapes and stay stuck to them so you can re-position the text containers without loosing their connections. The connectors themselves can have different styles (arrows, straight lines, ...) and have "control points" that allow you to redirect their path, in case you don't like the default one.

It allows you, of course, to change colours, fonts, etc... It also allows you to export to JPG as one of the options, which is what you mentioned you need.

I think MS Word probably allows you to do the same thing using their "drawing canvas"feature, but I am not sure about that.

3
  • 1
    For same reason powerpoint is frequently used for CAD drawings, and excel as a CAE application to do simulation... Yuck! :)
    – joojaa
    Commented Mar 5, 2015 at 15:26
  • 3
    @joojaa: Don't forget Word to create HTML
    – cockypup
    Commented Mar 5, 2015 at 15:52
  • Word used to have a reasonable vector editor in it, back in 2007 version. Then 2010 struck and everything went to pot.
    – Paul
    Commented Sep 14, 2016 at 19:17
3

Draw.io is a great online tool you can use to create images like this. It also syncs directly with drive/dropbox and other cloud services.

2

Those are called "Syntax Diagrams" or some such thing, they are related to BNF form for specifying syntax. There's a book by "Tobias" you can find by Googling that name and "basics of compiler design" that talks you through those digrams.

Pascal made them popular. They can also be found to document SQL (if you look at SQLite's documentation)

To draw them I recommend "graphviz" I am shocked it hasn't been specified already. You take a file (usually ending in ".dot") and run something like:

dot mygraph.dot -Tpng > mygraph.png

Job done, it draws many kinds of graph and there are lots of things to tune. I use that for loads of things.

Most recently I used it to debug an error-recovering parser, this was a large tree and it aranged it superbly.

Addendum

I did a search quickly for doing these in Graphviz and I came across the name "Railroad diagram" and then altered my search and found:

https://stackoverflow.com/questions/773371/what-is-a-good-tool-for-creating-railroad-diagrams

That asks how SQLite did them and has some solutions - I did mention I've seen this diagram with SQLite and that's how they did it.

4
  • My experience with Graphviz is that it prefers an old school "flowchart" format. Is an output such as the top one in the OP also possible?
    – Jongware
    Commented Mar 5, 2015 at 15:40
  • It was probably drawn with graphviz. Graphviz is fairly smart @Jongware just "as is" - if you input a tree it's like "oh a tree" and lays out accordingly. Now it will need to be told "Syntax diagram" and I'm not entirely sure how you'd do that - but it can do it.
    – Alec Teal
    Commented Mar 5, 2015 at 15:45
  • 1
    @Jongware see the edit! Found it
    – Alec Teal
    Commented Mar 5, 2015 at 15:47
  • @joojaa small point: I barely read the question - I don't know how to do "Railroad diagrams" now but the answered looked right - I had work to do and just wanted to help the OP so sorry about that.
    – Alec Teal
    Commented Mar 5, 2015 at 16:03
2

An interesting online tool is https://cacoo.com/ as the trhend with this kind of tools, a free plan and some monthly fees. The interesting part is that is colaborative.

Inkscape https://inkscape.org/ also have some conector tools.

One not free, but verey friendly for this kind of drawings is Draw plus http://www.serif.com/drawplus/ There is a free version but the conector tool is disabled.

Corel Draw also have some conector tools for that.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.