Cykl o dodatku Sparklines for Excel powoli zbliża się do końca. Czas zająć się przedostatnią grupą – wykresami dystrybucji, czyli rozkładu danych w posiadanym zbiorze. Są wśród nich wykresy, które już pojawiały się kiedyś na blogu (pudełkowy), są wykresy o śmiesznych nazwach (fasolowy) oraz diagramy do nich podobne. Każdy z tych wykresów możemy rysować wewnątrz komórek Excela za pomocą kilku kliknięć.
Wykres pudełkowy (BoxPlot) w dodatku Sparklines for Excel
Wykres pudełkowy służy do przedstawiania rozkładu danej cechy statystycznej za pomocą kolumn z tzw. wąsami. Wąsy (czyli linie zakończone prostopadłą do nich kreską) określają minimalne i maksymalne wartości z danego zakresu, natomiast kolumna będąca w centrum tego zakresu wyznacza rozstęp ćwiartkowy, czyli różnicę pomiędzy pierwszym a trzecim kwartylem. Narysowanie wykresu pudełkowego w Excelu wymagało wielu dodatkowych serii, jednak za pomocą SfE jest dość proste, biorąc pod uwagę fakt, że jedynym wymaganym parametrem jest zbiór danych. Dodatek sam oblicza wielkość poszczególnych kwartyli, wartości minimalne i maksymalne.
Spróbujmy więc narysować taki wykres dla danych na temat cen paliwa w Warszawie w jednym z tygodni marca (dane ze strony cenapaliw.pl). W arkuszu z przygotowanymi danymi, stajemy w komórce, w której ma się znaleźć nasz wykres, klikamy na przycisk BoxPlot ze wstążki Sparklines, a następnie w oknie dialogowym, w polu Points, wpisujemy adres zakresu komórek z danymi:
Efekt jest następujący:
Narysujmy więc wykresy dla dwóch pozostałych rodzajów paliw – ON i E98:
Widzimy, że wąsy zaczynają się w tym samym miejscu dla każdego rodzaju paliwa, co by oznaczało, że minimalna cena jest taka sama dla ON, E95 i E98, co jest oczywistą bzdurą. SfE® automatycznie rysuje pudełka w całej komórce, dopasowując szerokość osi do minimalnych i maksymalnych wartości każdego zakresu danych. Jeśli chcemy, aby oś była identyczna dla serii wykresów, musimy ręcznie ustawić jej początek i koniec. Służą do tego pola ScaleStart i ScaleEnd z okna dialogowego. Aby ułatwić sobie to zadanie, posłużymy się funkcjami Excela, które określą nam wartości skrajne (MIN i MAX):
Operację powtarzamy dla pozostałych dwóch wykresów, co daje następujący efekt:
Jakie dodatkowe opcje oferuje dla tego wykresu SfE? Po pierwsze, w polu BoxPlotClass, możemy określić rodzaj wykresu. Możliwe są tu następujące warianty:
- 5NS (domyślny) – wąsy obejmują cały zakres rozkładu danych (100%)
- 7NS – wąsy obejmują zakres od 2% do 98%, dodatkowe znaczniki na wąsach zakres od 9% do 91%, oprócz tego zaznaczone są punktami wartości skrajne (poza zakresem 2% i 98%):
Pozostałe warianty to Tukey, Bowley, Sigma3, szczegółowo opisane w manualu do SfE.
W kolejnym polu z okna dialogowego (ShowAverage), możemy określić, czy chcemy, aby wykres pokazywał nam średnią wartość. Jeśli tak, wpisujemy tutaj 1, a na wykresie pokażą się nam czerwone kreski w odpowiednim miejscu:
Kolejne pola służą do określenia pożądanego zakresu danych (AcceptableStart, AcceptableEnd) – uzupełnienie ich odpowiednimi wartościami wzbogaca nasz wykres o kreski wzdłuż pudełek:
Co ciekawe, pudełka automatycznie zmieniają kolor (na żółty albo czerwony), w sytuacji, kiedy dane odbiegają od pożądanego zakresu. A jeśli już o kolorach mowa, możemy też sami zmienić kolor pudełek, korzystając z pola ColorScheme i palety kolorów.
Jeśli od wąsów wolimy pełne kolumny/paski danych, możemy w polu Style wpisać 1, co zmienia nam wykres w następujący sposób:
Aby ta opcja zadziałała, musimy wybrać jakiś kolor i wpisać jego kod do pola ColorScheme.
Kolejne pole, Vertical, służy do zmiany wykresu na pionowy. Aby to uczynić, wpisujemy tutaj „1”.
Highlight1 i Highlight2 służą natomiast do dodatkowego wyróżnienia dwóch punktów na wykresie – po wpisaniu tutaj żądanych wartości, na wykresie pojawią się niebieskie punkty.
Ostatnia grupa pól, LineWeight, LineColor i OutlierColor służy do dodatkowego formatowania wykresu – można zmienić grubość wąsów i ich kolor, a także zmienić kolor wartości skrajnych, jeśli pokazujemy je na wykresie.
Wykres fasolowy w dodatku Sparklines for Excel
Kolejnym wykresem, któremu się przyjrzymy, jest wykres fasolowy (BeanPlot), który tak naprawdę jest dalszym krewnym wykresu pudełkowego. Również pokazuje dane dotyczące dystrybucji, tym razem jednak zamiast kolumny (pudełka), dane przedstawione są za pomocą kształtu przypominającego orzeszek ziemny albo zieloną fasolkę (stąd nazwa). Wykres ten może początkowo przypominać obróconą piramidę wieku znaną z demografii (patrz poniższy rysunek i dramatyczna prognoza na 2035 r. dla Polski), jednak nie należy go z nią mylić – piramida pokazuje rozkład liczby ludności wg wieku w podziale na dwie grupy (mężczyźni i kobiety), a wykres fasolowy pokazuje zawsze symetryczny rozkład bez podziału na grupy.
Czym różni się ten wykres od swojego poprzednika – wykresu pudełkowego? Box plot organizuje dane w kwartyle, natomiast bean plot pokazuje w sposób graficzny faktyczny rozkład cechy. To, co w przypadku wykresu pudełkowego było podzielone na cztery części i zagregowane, tutaj jest przedstawione bardziej szczegółowo, za pomocą kształtu.
Aby lepiej zrozumieć różnicę pomiędzy tymi wykresami, przedstawmy za pomocą bean plot dane dotyczące cen paliw z poprzedniego przykładu:
Większość wniosków, które możemy wyciągnąć oglądając oba te obrazki, będzie zapewne podobna. Jednak bean plot daje nam możliwość dokładniejszej analizy, poprzez uwidocznienie za pomocą szerokości „fasolki” wszystkich punktów, które giną w uogólniających dane „pudełkach” – najszersze punkty kształtu obrazują najgęstsze występowanie danej cechy (czyli w tym przypadku najbardziej popularną cenę danego paliwa).
Jak zatem rysujemy taki wykres, używając SfE®? Bardzo podobnie do BoxPlot. Stojąc w komórce, w której ma się znaleźć „fasolka”, klikamy na przycisk BeanPlot na wstążce Sparklines, a następnie w oknie dialogowym określamy zakres danych do uwzględnienia:
W efekcie powstał następujący wykres:
Analogicznie jak poprzednio, aby wykresy dla pozostałych typów paliw można było porównać, ustawiamy minimalną i maksymalną wartość osi za pomocą pól ScaleStart i ScaleEnd w oknie dialogowym:
Parametrem, za pomocą którego możemy sterować dokładnością naszego wykresu, jest parametr Bins. Wpisując tutaj większe bądź mniejsze wartości, możemy sprawić, że program będzie bardziej lub mniej zaokrąglał nasz zbiór danych. Funkcja ta jest szczególnie przydatna przy większych zbiorach danych.
Możemy również wyróżnić dowolną wartość na wykresie, korzystając z parametru HighlightValue, a także pokazać medianę za pomocą parametru ShowMedian (należy zwrócić uwagę, że średnia jest pokazywana na wykresie domyślnie, w postaci białej pionowej kreski). Podobnie jak w przypadku innych wykresów SfE® możemy też określić, czy wykres ma być wyświetlany w orientacji poziomej czy pionowej. Służy do tego pole Vertical, w które dla uzyskania wykresów pionowych wpisujemy „1”.
Pole ColorScheme służy natomiast do zmiany domyślnego, szarego koloru wykresu na inny. Jak można się domyślić, korzystamy z tabeli kolorów.
Wykres kreskowy w dodatku Sparklines for Excel
Kolejny wykres dystrybucji dostępny w dodatku SfE to wykres kreskowy (Stripes), przypominający nieco z wyglądu kod kreskowy, ponieważ wartości prezentuje w postaci pionowych kresek na poziomej osi. Tak jak poprzednie wykresy, pozwala on obserwować rozkład danej cechy, natężeniem koloru obrazując te miejsca na osi, w których cecha występuje najczęściej. Aby lepiej zrozumieć ten wykres, zmienimy zestaw danych na większy – przyjrzymy się przykładowemu zestawowi wskaźników. W celu narysowania takiego wykresu, klikamy na przycisk Stripes na wstążce Sparklines, a następnie w polu Points okna dialogowego wpisujemy adres zakresu komórek, w którym znajdują się dane:
Jest to jedyny wymagany parametr potrzebny do stworzenia wykresu, który wygląda tak:
Widzimy zatem nasze liczby, zaznaczone na poziomej osi w postaci kresek. Tam, gdzie jest ich największe nagromadzenie, wykres jest najciemniejszy.
Wykres ten w dodatku SfE nie oferuje zbyt wielu opcji, możemy jednak nieco go urozmaicić. Możemy wyróżnić dodatkową, nieco dłuższą linią trzy wartości – medianę (w pole ShowMedian wpisujemy „1”), która pokaże się pomarańczową przerywaną linią, średnią (w pole ShowAverage wpisujemy „1”), której linia będzie czarna oraz dowolną inną wartość (HighlightValue), która widoczna jest jako linia czerwona:
Pozostałe opcje są podobne, jak w innych wykresach z tej grupy. Pola ScaleStart i ScaleEnd służą do wpisania wartości skrajnych osi, pole ColorScheme natomiast pozwala zmienić domyślny kolor szary wykresu. Możemy tu wpisać dowolny kod koloru. Pole Vertical służy do obrócenia wykresu. Aby uzyskać wykres zorientowany pionowo, wpisujemy tutaj „1”.
Wykres Stripes jest dobrym rozwiązaniem, jeśli musimy w kompaktowej formie przedstawić dystrybucję jakiejś cechy i mamy dość duży zbiór danych.
Wykres rozrzutu w dodatku Sparklines for Excel
Spread – kolejny wykres z tej grupy – jest bardzo podobny do wykresu kreskowego. Dane są tutaj również obrazowane za pomocą pionowych kresek, jednak w tym przypadku o zróżnicowanej długości, odpowiadającej liczebności grupy. Spróbujmy narysować taki wykres dla tego samego zestawu danych. Stojąc w odpowiedniej komórce, na wstążce Sparklines klikamy przycisk Spread. Analogicznie jak poprzednio, w pole Points wpisujemy zakres danych:
Oto efekt, czyli oba „spokrewnione” wykresy:
W miejscach, gdzie Stripes ma intensywniejszy kolor, Spread ma najwyższe linie. Co ciekawe, w wykresie Spread nie mamy aż tylu opcji zaznaczenia dodatkowych punktów na wykresie, co w Stripes. Jedyną opcją wyróżnienia jest zaznaczenie średniej za pomocą pola ShowAverage (wpisujemy tu „1”) – pojawia się dodatkowa czerwona linia:
Możemy natomiast sterować grubością linii – robimy to za pomocą pola LineWeight. Tak samo, jak w przypadku Stripes, możemy tu sterować zakresem osi (ScaleStart, ScaleEnd), a także schematem kolorów (ColorScheme) i orientacją wykresu (Vertical). Za to niepozorne pole Style kryje możliwość zmiany stylu wykresu. Wpisując tutaj wartości od 1 do 5, możemy uzyskać następujące efekty:
Domyślnie stosowany jest styl nr 4, styl nr 1 przypomina trochę zapisu dźwięku, nr 3 rozkłada losowo punkty (technika taka w j. ang. nazywa się jitter i ma na celu uniknięcie nakładania się na siebie punktów), nr 5 – to opisywany już dot plot Wilkinsona.
Wykres punktowy w dodatku Sparklines for Excel
Ostatnim wykresem z tej grupy jest wykres punktowy (inaczej: wykres rozproszenia, wykres XY), nazywany w programie Scatter. Jest to wykres obrazujący punkty na osiach x i y. Każdy punkt niesie jednocześnie dwie informacje, z których jedna jest prezentowana na poziomej, a druga na pionowej osi. Najczęściej służy on do prezentowania korelacji, zależności między jakimiś zjawiskami, na przykład zależność wysokości wynagrodzenia od posiadanego wykształcenia. Przy okazji tego wykresu warto przypomnieć, że istnienie statystycznej korelacji nie oznacza od razu związku przyczynowo-skutkowego, jak na poniższym przykładzie, gdzie liczba noblistów z poszczególnych krajów jest dodatnio skorelowana z konsumpcją czekolady.
SfE pozwala na szybkie narysowanie takiego wykresu wewnątrz pojedynczej komórki Excela. Nie jest to jednak do końca klasyczny sparkline, ponieważ aby wykres odczytać, musimy taką komórkę dość znacznie powiększyć (chyba, że korelacja jest bardzo prosta, a punktów niewiele, ale i w takim przypadku lepiej prezentuje się wykres o kształcie zbliżonym do kwadratowego). Dane wyjściowe powinny być uporządkowane w dwie kolumny, w których każdy wiersz odpowiada jednemu punktowi na wykresie. Spróbujmy narysować taki wykres dla zależności ceny skupu ziemniaków i ceny ziemniaków na targowisku. W tym celu, porządkujemy dane w dwie kolumny, a następnie na wstążce Sparklines odnajdujemy przycisk Scatter. Stojąc w odpowiedniej komórce klikamy ten przycisk i w pole PointSet1 wpisujemy adres naszego dwukolumnowego zakresu z danymi:
Możemy już zacząć szukać zależności, bo nasze punkty układają się w następujący wzór:
Oczywiście istnieją możliwości dalszej edycji naszego wykresu. Możemy na przykład, jak w większości sparklines, sterować zakresem osi. Służą do tego pola ValMiniX, ValMaxiX, ValMiniY, ValMaxiY. Dodatkowo, możemy też podzielić obszar wykresu pionową i poziomą linią. W tym celu wpisujemy odpowiednie wartości w pola VLine i HLine. Autor dodatku SfE® przewidział również możliwość dodatkowego wydzielenia obszaru na wykresie za pomocą szarego pola, którego zakres ustalamy wpisując wartości liczbowe w pola XMinZone, XMaxZone, YMinZone i YMaxZone.
Scatter w dodatku SfE posiada opcję dodania drugiej serii danych. Służy do tego pole PointSet2. Ten zbiór danych pojawi się na wykresie w postaci czerwonych kwadratów (w odróżnieniu od czarnych okręgów dla serii pierwszej).
Wśród pozostałych opcji modyfikacji znajdują się również między innymi opcja połączenia punktów linią i opcja zaznaczenia skrajnych punktów zbioru.
Plik do pobrania
Tu możesz pobrać plik z wykresami dystrybucji w dodatku Sparklines for Excel.