yED graph editor
Here I’m going to make some notes about using yED graph editor for Theory of Change diagrams. I’ll add to it as I find out more.
TL;DR: Seems like a very useful tool for Theories of Change.
There’s an online version. It has plenty of functionality but you don’t seem to be able to save to a public address, so that you could for example share a link to a diagram with someone else. So the main advantage is just that you don’t have to bother to install anything, rather than that you could work or share collaboratively. (I might be wrong on this.)
I installed the offline version for Windows. (Looks like it’s available for Mac and Linux too.) I had to install as administrator because otherwise the installation routine said I didn’t have the correct rights.
Important for Theories of Change:
Various automatic layouts, e.g. hierarchical
It allows you to put nodes inside groups, and these can be nested, and also opened & closed - good for complicated diagrams.
Supports plenty of unicode symbols and emojis (I haven’t found any which aren’t supported.)
You can import node and edge lists from xls and from “trivial graph format”. That’s pretty important when you’ve got a lot of text. Looking at the diagrams which people make at theorymaker.info, lots of text is a pretty common problem - though I’m not a fan of it myself.
It’s pretty powerful.
There is a Properties panel which allows you to change the properties of a multiple selection of nodes.
Cut, copy and paste.
You can easily create non-standard edges.
Not implemented or I’ve not worked out how to do it:
I’ve not worked out how to make nodes auto-fit to the width of the text - you have to do this manually with
tools/fit node to label
I’d like to be able to inter-operate with R. yED can write graphml and the R package igraph should be able to import it, but the import fails with warnings. Found the same complaint on StackOverflow but no solution.
It’s a bit clunky to add a lot of material initially. There is very limited support for keyboard shortcuts, basically you can press Ctrl+W to add a child node or Ctrl+D to duplicate one.
In my opinion it is really important to maximise use of space, i.e. text needs to be as big as possible without too much white space, so you can actually read the diagram e.g. when pasted into a document. yED is not so good on this.
I did try Lucidchart, which is free for small diagrams with up to 60 entities - but it doesn’t have groups and doesn’t seem to re-route connectors.
Comparison with my own Theorymaker apps:
For me, it’s really important to be able to put nodes inside groups, and that these can be nested. (Actually I don’t nest groups very often at all, but as Theorymaker, my “Logic of Theories of Change” ;-(), allows for it, I need a graphing app which can do this too.) I couldn’t find any suitable graphing app which could do this easily, which is one reason why I started creating my drag-and-drop app at i.theorymaker.info. Perhaps I was wasting my time, as yED can do it, at least it can, now in 2018 ;-(
The comparison with my text-based app is more interesting. One thing yED can do is easily draw arrows to and from groups, which theorymaker.info can’t do without a hack.
(to be continued)