Visualizing Likert Scale Survey Data

I’m currently helping to evaluating a large market research survey, which ueses Likert Scales. To visualize the data I’ve tried several plots. The plots below where created with artificially created data to expose the strengths and weaknesses of different plot types.

Data distribution:


You can find the code for all plots here!


Bar Plot: Mean Values


  • Easy to create
  • Simple to read
  • Q3 – Q5 distinguishable


  • Hides a lot complexity
  • Doesn’t show spread
  • Creates high confidence in shown values
Likert Scale Mean

Bar Plot: Mean values and Standard Deviation

Extension of first plot.


  • Still simple
  • Introduces skepticism into shown data
  • Hints at spread in data


  • Hides a lot complexity
  • Still doesn’t show distribution
Likert Scale Mean + Std

Violin Plot


  • High Resolution
  • Shows distribution of data


  • Harder to read
  • Noisy on small sample sizes
  • Shows data as being continuous
Likert Scale Violin

Vertical Histograms


  • High Resolution
  • Shows distribution of data


  • Harder to read
  • Shows data as being continuous
Likert Scale Histogram

Scatter Plot


  • High Resolution
  • Actually shows complete data
  • Shows distribution of data


  • Hard to read
  • Introduced noise and overdraw can distort data

Scaled Dots


  • High Resolution
  • Shows distribution of data
  • Shows data as discrete values


  • Visual distortion of proportions
  • Humans can’t easily compare circle sizes
Likert Scale Scaled Dots

Scaled Dots


  • Looks scientific
  • Contains Median, Quantiles
  • Shows outliers


  • Not designed for discrete data
  • Doesn’t show distribution correctly (e.g. Q4 + Q5)
Likert Scale Boxplot


F1-Score rises while Loss keeps increasing

I’ve recently run into a paradoxical situation while training a network to distinguish between to classes.

I’ve used cross entropy as my loss of choice. On my training set the loss steadily decreased while the F1-Score improved. On the validation set the loss decreased shortly before increasing and leveling off around ~2, normally a clear sign for overfitting. However the F1-Score on the validation set kept rising and reached ~0.92, with similarly high presicion and recall.

As I never took a closer look at the relation between F1-Score and the cross-entropy loss, I’ve decided to do a quick simulation and plotted the results. The plots show the cross-entropy in relation to the F1-Score. On the first graph I varied the range in which the misses landed, while hits where always perfect. The graph shows that misses with a confidence create higher losses, even at high F1-Scores. In contrast the confidence of hits has a negligible influence on the loss as depicted in the second graph.

It seems likely that my network developed a high confidence in its prediction, only answering 0 or 1, which provoked a high loss while still achieving reasonable high accuracy.


F1-Score and Cross Entropy with varying Miss Ranges F1-Score and Cross Entropy with varying Confidence

Weizen Kastenbrot mit Saaten

Weizen Kastenbrot mit Saaten
Weizen Kastenbrot mit Saaten

Ein einfaches Rezept für ein Kastenbrot aus Weizenmehl. Die Zusammensetzung der Saaten kann beliebig angepasst werden.



  • 250g Weizenmehl 550
  • 250g Wasser
  • 60g Anstellgut (TA200)


  • 80g Sonnenblumkerne
  • 40g Leinensamen
  • 40g Haferflocken
  • 160g heißes Wasser (ca. 90° C)


  • Vorteig
  • Saaten
  • 200g Weizenmehl 550
  • 15g Salz
  • 5g Hefe

Zutaten des Vorteigs gut vermengen und 12 Stunden bei Raumtemperatur gehen lassen

Saaten mischen und mit heißem Wasser übergießen. Mit eine Klarsichtfolie abdecken und ca. 1 Stunde ziehen lassen.

Alle Zutaten des Hauptteigs vermengen und per Hand zu einem weichen, leicht klebrigen Teig kneten.

Teig 90 Minuten gehen lassen und alle 30 Minuten in der Schüssel falten.

Teig auf einer bemehlten Arbeitsfläche formen und direkt in die Kastenform geben.

Für weitere 2 Stunden gehen lassen, bis sich das Volumen des Teigs etwa verdoppelt hat.

Vor dem backen den Brotteig längs einschneiden und gut befeuchten (z.B. mit einer Sprühflasche)

Den Ofen auf 250° C vorheizen und das Brot für 10 Minuten backen. Danach die Temperatur auf 200° C reduzieren und für weitere 35 Minuten backen. Das Brot aus dem Kasten nehmen und für weitere 10 Minuten auf einem Rost backen.


Weizen Kastenbrot mit Saaten Anschnitt

How to: Create Pixel Night Sky

I’ve used this method to create the night sky of my Ludum Dare 38 Game. It’s an easy way to create the stars of the night sky in few minutes.

Start with two layers, one for the dark sky and one for the stars. The dark sky is just uses a dark, blue color. The star layer contains a mixture of light colors. It is up to you how you create this layer. I painted the layer randomly with 3 colors and used the Smudge Tool to mix them. Make sure the star layer has an alpha layer.

Initial Layers for Pixel Stars

To convert the randomly colored layer into stars the RGB Noise Filter is used, which can be found under Filters → Noise → RGB Noise …. Set up the filter as shown below. The Red, Green and Blue Noise is completely disabled and only the Alpha Noise is applied. If you do not see the Alpha slider of the filter make sure that the layer has an Alpha Channel.

After applying the filter for the first time the result does not look very promising. If you keep applying the filter repeatedly (using the Ctrl+F shortcut) the remaining color will get sparser and sparser. Keep doing this until you are satisfied with the density of the stars. The results should look like the example below.


Finished Pixel Star Night

Ludum Dare 38: Little Sky Farm

Play Little Sky Farm

Little Sky Farm


You want to go the final step with your loved one but damn it is expensive. Living on a small floating island there isn’t much to earn money with, but you have to find a way before it is too late. Farm the little land you have to rack up the money you need.

Game Mechanics

The worth of objects changes with time. Most objects get more valuable over time, but only to a certain point. Once they exceeded this point the value deteriorates until they are completely worthless.

It is your job to find out how long processes have to run for an optimal outcome.

This requires keen observation and managing your time between different tasks.


  • WASD and Arrow-Keys: Walk and Jump
  • Spacebar: Use selected tool
  • Mouse: Control build menu
  • 1-8: Change Tool


  • Hammer: Interact with most objects
  • Wood: Plant trees
  • Wheat: Plant Wheat
  • Other: there might be hidden functionalities


Third Party Tools/Assets

Sound Assets

 Little Sky Farm