Posty

Dynamiczne wykresy

Obraz
Korzystając z okazji, że w tym tygodniu moja wizualizacja została wyróżniona w MakeoverMonday, oraz, że w zasadzie wszystkie ostatnie wpisy były dosyć techniczne, dziś skupię się na czymś lżejszym. Przedstawiam wykres z dynamicznym punktem odniesienia (nazwa autorska, patent pending).
Idea Zamysł był taki, aby korzystając z parametru wybierać punkt odniesenia (benchmark) - w tym przypadku miasto. Po wybraniu punktu widzimy jaka jest różnica (w tym przypadku punkty procentowe) pomiędzy innymi miastami.

Wykonanie Aby wykonać taki wykres musimy zacząć od stworzenia odpowiednich pól kalkulowanych i parametru sterującego. Dane do parametru (tekstowego) zaciągamy z odpowiedniego pola, korzstystając z tego sprytnego guziczka:

Wykorzystując LOD tworzymy pole kalkulowane wyciągające wartość dla wybranego parametrem miasta. Oczywiście w wyrażeniu musimy zawrzeć jakiś poziom agregacji - najlepsze byłoby ATTR(), jednak funkcja ta nie działa w środku LOD. Znając dane wiem, że taki sam efekt uzysk…

Jittering w Tableau

Obraz
Dziś krótki, praktyczny wpis na temat jitteringu. Brzmi tajemniczo, ale jest (w zamyśle) proste i skuteczne.
Na pewno nie raz spotkałeś się z problemem nakładania danych na mapie - czy to z powodu zbyt dużego zagęszczenia, zbyt małej dokładności danych (np. tylko nazwa miasta a nie konkretne współrzędne), czy po prostu w danych było kilka punktów o identycznych koordynatach.
Co zrobić w takim momencie? Zabawa kolorem ani detalem nic nie da - unikniesz agregacji punktów ale dalej będą wyświetlane jeden pod drugim. Zawsze można też kombinować i używać pociętych custom shapów i podwójnej osi - nie jest to czytelne ani zazwyczaj nie wygląda dobrze - been there, done that. Poza tym coś takiego zadziała tylko, gdy nakładają się dwa punkty. W każdym z tych scenariuszy z pomocą przychodzi nam właśnie jittering. Jeśli czytasz bloga regularnie, to pewnie zauważyłeś pewne podobieństwo konceptu do hex binning.

Cały proces prześledzimy na przykładzie danych dotyczących stadionów w Polsce pochodzą…

Donut Chart z bonusem

Obraz
Donut Chart to kolejny z użytecznych wykresów, który nie jest dostępny domyśle w Tableau. Jak w większości przypadków, można go zbudować trochę "oszukując". Jednak prosty czy można z donut charta wycisnąć jeszcze więcej? Na przykładzie mojej ostatniej wizualizacji widać, że tak.


Na wizualizacji donut chart wizualizuje obecność danej osoby w telewizji o danej godzinie - jest więc tak naprawdę analogią zegara.

Standardowy donut chart to to prostu pie chart z białą zaślepką w środku - drugim, pustym, białym pie chartem. Mój donut chart to pie chart z nałożonym na to kształtem - w tym przypadku okrągłym zdjęciem. Rozwiązanie to daje kilka korzyści: oczyszcza wizualnie dashboard - dzięki tym donut chartom pozbyłem się dużej i brzydkiej heat mapyzwraca uwagę i podkreśla użyte zdjęciaw ciekawy sposób umożliwia filtrowanie Jak zrobić taki Donut Chart? Zaczynamy oczywiście od zwykłego wykresu kołowego. W moim przypadku pokazuje on ilość czasu jaką dana osoba jest na wizji o danej god…

Radar Charts w Tableau

Obraz
Co to właściwie jest
Z wykresami gwiazdowymi, zwanymi po angielsku radar charts, świadomie zetknąłem się po raz pierwszy w czasie studiów, zapoznając sie z Global Competitveness Report - jak można wywnioskować po nazwie, opisuje on konkurencyjność poszczególnych krajów oraz ich atrakcyjność dla inwestorów. Poniżej zamieszczam screenshot z tego właśnie raportu dotyczący Polski. Kiedy używać wykresów typu Radar ChartWykresów gwiazdowych używamy kiedy chcemy pokazać kilka niezwiązanych ze sobą metryk na jednym wykresie. Oczywiście można użyć do tego celu wykresu słupkowego lub tabelki, jednak z rosnącą ilością danych wzrasta poziom trudności odbioru. Radar Chart jest również bardzo pomocny kiedy chcemy dokonać porównania do innego rekordu lub np. średniej, jak to zrobiono na przykładzie powyżej. Jak stworzyć Radar Chart w Tableau Tableau nie oferuje domyślnie takiej opcji. Jednak jak to zazwyczaj bywa, możemy narysować taki wykres na siatce po uprzednim wyliczeniu współrzędnych wszystki…

Drzewa w Warszawie

Obraz
Po ostatnich utarczkach z R i api przy zbieraniu danych o Black Sabbath postanowiłem wziąć się za coś lżejszego i bardziej skupionego na Tableau. W dzisiejszym wpisie będą ciekawe dane jak rozwiązaniu z Tableau. Skupię się na otwartych danych dotyczących drzew w Warszawie, pochodzących ze strony Urzędu Miasta.
Pozyskanie danych Jak już wspomniałem dane pochodzą ze strony Urzędu Miasta. Aby z nich skorzystać nie trzeba się rejestrować (co się okazało przypadkiem przy odpalaniu skryptu). Pomimo uzyskania klucza do API skrypt działa bez niego. Poniżej uproszczona wersja skryptu R.

Skrypt zapisuje dane do pliku CSV zawierającego 140 tysięcy rekordów. Dane są dosyć zanieczyszczone, jednak dla nas będą wystarczające.
Wizualizacja Ostatecznie stworzyłem dwa dashboardy.

Tym razem zastosowałem kilka ciekawych rozwiązań, wśród nich:
wykres typu hexbinwybór typu wykresu - sterowany parametrempodział danych na mapie po dzielnicach  Wykres HexBin  A więc po kolei. Jak zrobić wykres hexbin? Zasad…

48 lat koncertowania Black Sabbath

Obraz
Zainspirowany infografiką o Metallice postanowiłem zrobić coś podobnego o Black Sabbath. Dosyć szybko znalazłem stronę setlist.fm, która jak sama nazwa wskazuje zawiera setlisty z koncertów. Na szczęście serwis posiada darmowe API, co znacząco upraszcza całą operację podbierania danych. Poniżej zamieszczam mój kod R, którym pobrałem dane dotyczące wszystkich występów.

Niestety nie mogłem w elegancki sposób podzielić kolumny zawierającej listę piosenek. Z pomocą przyszedł mi wpis Łukasz Prokulskiego dotyczący podobnej analizy Rolling Stones. Łukasz korzysta z funkcji unnest() z pakietu tidyverse. W ten sposób uzyskałem informacje nt. utworów granych na każdym koncercie.

Do tego wszystkiego stworzyłem jeszcze tabelę zawierającą tracklisty wszystkich albumów - głównym celem mojej analizy było pokazanie dystrybucji utworów na koncertach właśnie po albumach.


Wizualizacja ta nie jest skomplikowana, a jedynymi ciekawymi rozwiązaniami jest użycie parametru to sterowania poziomem detalu na os…

Tableau i dane giełdowe

Obraz
Od jakiegoś czasu zastanawiałem się, w jaki sposób dobrać się do danych giełdowych, tak aby móc zaprezentować je w Tableau. Niestety API GPW i innych giełd jest płatne (i to sporo). Na szczęście do prostego śledzenia kursów nie potrzeba danych w czasie rzeczywistym - wystarczą dane historyczne. Dlatego dla potrzeb tego projektu dobrym rozwiązaniem jest rozwiązaniem jest GoogleFinance - agregator kursów giełdowych i innych wskaźników finansowych. Na podstawie danych z tego źródła powstała poniższa wizualizacja.

Przygotowanie danych Aby dobrać się do danych giełdowych warto wykorzystać funkcję GOOGLEFINANCE dostępną w GoogleSheets, która zwraca informacje dot. danej spółki - jest to najprostsze rozwiązanie. Wydaje się to wystarczające w kontekście danych, które chcemy pozyskać, jednak gdy chciałem podłączyć się do takiego arkusza wykorzystując domyślny konektor Tableau, okazało się, że arkusz jest pusty - pomimo widocznej statyczności danych w arkuszu.

Rozwiązania są dwa: użycie funkcji…