May 8, 2018

Realtime comments on a Theory of Change

Wouldn’t it be great if, for an evaluation, you could map out the project’s theory of change and then pin the data (the answers to the evaluation questions) directly on the diagram as pop-up notes? Ideally with different colours to mark different kinds of respondent (and other data sources). You could use it interactively with respondents, and/or paste the data on later and elicit comments.

I made a mock-up.

You can interact with it here, and view the comments. If you were logged in, you could also update the diagram, add comments etc.

I made it with Realtimeboard, now at, which is really interesting for this task. Disadvantage: There are only 3 colours for the comments.

You can also embed a diagram in a webpage, like this (you have to click on the symbol) -

It updates live, but you can’t see the comments.

May 7, 2018

Responses to open questions shown as tooltips in a chart

Open questions in surveys are a great idea. But often, we don’t really have time to looking at them in detail.

Here’s a suggestion to make more use of data from your open questions.

Suppose you have just implemented a survey on attitudes to public transport, which includes groups of numerical questions on which the respondents rate the local transport system on convenience and value. And suppose you’d thoughtfully added an open question asking for more information on those answers.

Try making a chart with the total or mean scores on the two groups of numerical questions on the x- and y-axes, and add the answers to the open question as a third column to give the tooltips. It encourages the reader to look more closely at individuals who are extreme in one way or the other … who are the people who think the system is convenient but too expensive? And what about the typical” people in the middle?

Of course you can’t have tooltips on a printed document. I believe it’s really tricky in PDF. So it makes most sense to share your document on the internet. Here are some ways to do it, and one way using Excel.

Tableau public

The easiest way to do this is probably in in Tableau Public, as above. Full embed_code_version here.

Tableau Public is a free download - you install the program, work on your chart on your computer then press a button to share it to the Tableau website. You can also embed the chart as I did above (though I had to delete some whitespace in the embeddable code to make it work).

Google charts: HTML

With Google charts you just edit a piece of HTML and paste it into your webpage. It is not too difficult to edit the HTML, but it isn’t so easy to connect it to a database, e.g. a Google sheet. Still, the results are nice. Here I’ve included a third dimension (the sizes of the points — you can do that in Tableau too):

Google Charts in a Google Sheet

There is also a point-and-click version, when you embed a chart within a Google sheet, data connection is trivial but you can’t customise the tooltips so it doesn’t really answer the question I posed in this blog.

Google Fusion Tables

I also tried the same trick in Google Fusion Tables: here’s the template, you can copy it and adjust it to your needs.

However, it doesn’t seem to be maintained any more.


If you’re into R, you can do it with htmlwidgets. I found it a bit fiddly though to make the tooltips work.


You can do something similar in Excel, but you have to publish the workbook as an Excel macro-enabled file, which might scare some people.

Other uses

Rather than using the narrative data as a mere adjunct to the numerical data, you can also turn the method on its head. So you can focus mainly on the narrative answers - the numerical answers might be just e.g. age etc or some other variable which helps to put the narrative answers in context.

Sensemaker® uses some ideas like this too.

March 21, 2018

Examples of trivial graph format

Examples of trivial graph format. Can be imported by yED.

The simplest version is this:

one two label for edge from one to two
three four another label on the other edge
one three


This version allows you to have longer node labels: (a list of nodes followed by a list of edges, separated by #”).

one   the label for one
two   the label for two
one   two label for edge from one to two
three four another label on the other edge
one   three

(you don’t have to line up the labels as I have here, you can just have a one-space gap, but it looks nicer)


1      goal
1.1    outcome one
1.1.1  activity one
1.2    outcome two
1.2.1  activity two
1.1    1
1.1.1  1.1
1.2    1
1.2.1  1.2
tgf tech

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