March 20, 2018

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.

Online version

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.)

Offline version

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, lots of text is a pretty common problem - though I’m not a fan of it myself.


It’s pretty powerful.

Some features:

There is a Properties panel which allows you to change the properties of a multiple selection of nodes.

Cut, copy and paste.

Multiple undo.

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 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 can’t do without a hack.

(to be continued)


Previous post
An evaluation puzzle: “Freak weather” Two NGOs prepare ships to help people stranded after a tsunami on a remote island. NGO A is well-prepared and sets sail in time. NGO B has barely
Next post
Examples of trivial graph format . Can be imported by yED. The simplest version is this: etc. This version allows you to have longer node labels: (a

This blog by Steve Powell is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License, syndicated on r-bloggers and powered by Blot.
Privacy Policy