I'm struggling with a problem which concerns 'Analyze' section in my online survey app. Users don't want to read all of the answers from open question one by one. They need a summarization, a possibility to quickly overview the answers. The most popular way (and the only one that I'm aware of) is to take the most popular words from answers and display them in a form of a cloud. I don't want to use word clouds, because most users don't know what to do with such summarization and they think it's useless.

Do you know any better way to present such data?

  • 3
    It's a bit hard to answer without knowing what your data actually is. What is it you're trying to show? – JonW Apr 15 '14 at 12:14
  • I've just added some details. – AgaTene Apr 15 '14 at 12:30
  • Still hard to answer - perhaps provide the goal of the survey and an example question? – Izhaki Apr 16 '14 at 0:39
  • @Izhaki The problem is that users can ask whatever they want. They create surveys, I provide the tool to do it and to analyze the results. It's hard to give you the goal of the survey or some example questions, because this could be anything what users create. For me, it's a more general problem: how to summarize qualitative data? – AgaTene Apr 16 '14 at 9:51

Word clouds are completely useless. Two patterns here (making a bunch of assumptions about your needs) might be:

  1. Perform semantic analysis on the answers to strip away filler words (and possibly group together phrases), and then display words by frequency in a simple bar chart. Bar charts are one of the easiest-to-understand visualizations of categorical data, and worlds better than word clouds for almost any purpose. The semantic analysis will be a difficult technical challenge (most survey apps don't do it), but it would make for a great UX if you pulled it off.

  2. Give the users an interface to quickly categorize answers into buckets, and then display the count of particular buckets rather than working with the individual answers. This lets one user take on the work of categorization, and other users benefit from their effort.

  3. Circumvent or scope down the problem by reworking the open answers into a set of multiple-choice questions with an "other" option. This reduces the number of answers the users need to parse.


This is a technical option, but if you have the means it's worth investigating:

  • Define a similarity metric between answers. You can use simple metrics, like cosine similarity (ie. basic word frequencies), or go more complex. You can enrich the metric by using synonym dictionaries, tf-idf, and edit distance techniques.
  • Apply a clustering algorithm (k-medoids, spectral clustering) to cluster the answers into a predefined number k of buckets.
  • Let the user choose k, and show the buckets with one example per bucket. Let the user click through the examples. Some basic statistics should let you highlight key phrases for each bucket: ie. words that occur relatively often in the given bucket, but not in the whole set of answers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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