Lessons Learned 2014 - Alterspyramide Darstellung

Vor längerer Zeit wurde ich gebeten eine Altersstruktur über die Konzernmitarbeiter in QlikView darzustellen. Eine gut zu lesendes Chart dafür ist eine Alterspyramide, bei der die Altersstruktur getrennt nach Frauen und Männern auf zwei Seiten dargestellt wird. Ein schönes Beispiel dazu findet man online bei Statistik Austria.

Bevölkerungspyramide von Österreich und Wien
Im QlikView Script habe ich mir dafür ein eigenes Feld "Altersklasse" vorbereitet.

Load
*,
dual(replace(class(Alter,5),'<= x <','-'),class(Alter,5)) as Altersklassen;
LOAD 
 age(today(),Geburtsdatum) as Alter,
   Geburtsdatum, 
     Nachname, 
     Vorname, 
     Geschlecht
FROM
Personal.csv
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

Die selten genutzte Funktion age() rechnet das Alter einer Person zum heutigen Tag today() aus. Class() wird benutzt um das Alter der Personen in 5-Jahres-Scheiben zu gruppieren. Da die Class()-Funktion wenig elegant die Textsyntax 30 <= x < 35 liefert, geht man am besten noch mit einem String-Replace() auf die schönere Darstellung 30-35.

Um das Chart zu bauen, benutzt man am besten ein gestapeltes Kombichart in horizontaler Ausrichtung. Das Chart benötigt 2 Dimensionen: Altersklasse und Geschlecht sowie eine Expression.

Kombi Diagramm, Ausrichtung Horizontal und Subtyp Gestapelt

Wer die Formel unterhalb liest, der sieht, dass das weibliche Geschlecht mit einem negativen Vorzeichen versehen wird. Das ist natürlich nicht sehr gentlemanlike, und führte im Projekt - höflich ausgedrückt - eher zu einer Ablehnung dieses Charts.
"Minus"-Frauen kommen nicht gut an!

Nachdem in letzter Zeit in der QlikCommunity viel über Unicode und Numberformat diskutiert wurde, nahm ich mich des Problems wieder an, und suchte die Männlich- und Weiblich-Unicodezeichen heraus.

Hinterlegt man bei der Formel folgenden Zahlencode

♂#.##0;♀#.##0

so löst man das Problem. Der erste Zahlencode wird für positive Werte (in diesem Fall männlich), der zweite Zahlencode für negative Werte (in diesem Fall weiblich) angezeigt. Das Chart zeigt  nun die Werte deutlich höflicher an!


Das komplette Beispiel findet sich hier zum Download.

heldendaten GmbH,2017