Po co oglądać wykresy?

Graficy często upiększają wykresy po to by ładniej wyglądały.
W większości przypadków jest to jednak próżny trud (o ile nie chodzi o Data Art), bo o wartości wykresu świadczy głównie to, czy pokazuje on ciekawą historię. Bez ciekawej historii trudno coś wykrzesać.

Poniżej wybrałem cztery prace domowe studentów z kursu Techniki Wizualizacji Danych z ostatnich dwóch tygodni. Mnie te historie się spodobały (prace domowe polegają na wizualizacji w ggplot2 danych umieszczonych ostatnio w gazetach/portalach informacyjnych).

Kto strzelił więcej goli, Messi czy Ronaldo?
Poniższy wykres pokazuje, że obaj panowie idą łeb w łeb. (Autor: Piotr Smuda)

Skąd się lata w Polsce?
Poniższy wykres pokazuje liczbę pasażerów wylatujących z różnych lotnisk. (Autorka: Ewa Baranowska)

Jaka jest stawka akcyzy przy sprowadzaniu 6-litrowego Dodge Ramchargera?
Poniższy wykres pokazuje stawki akcyzy w zależności od wielkości silnika i roku produkcji. (Autorka: Marta Jóźwik)

Ile i jakie tablety się sprzedaje na świecie?
Poniższy wykres pokazuje sprzedaż i zmianę sprzedaży w zależności od producenta. (Autorka: ponownie Ewa Baranowska)

ggmail + forecast = how many emails I will get tomorrow?


During the eRum 2016, Adam Zagdański gave a very good tutorial about time series modeling. Among other things I’ve learned that the forecast package (created by Rob Hyndman) got cool new plots based on the ggplot2 package.

Let’s use it to play with mailbox statistics for my gmail account!

1. Get the data

Follow this link to download the data from your gmail account as a single mbox file.
It may be large (15GB in my case), but for further steps it’s enough to keep only headers. grep + cat will do the job.

Czytaj dalej ggmail + forecast = how many emails I will get tomorrow?

Z dziennika nauczyciela akademickiego – Techniki Wizualizacji Danych

Prowadzę w tym semestrze Techniki Wizualizacji Danych na MiNI PW. Omawiamy najróżniejsze narzędzia do tworzenia grafiki statycznej i interaktywnej. Począwszy od ggplot2 przez google vis, D3 po Adobe Illustrator.
Ale w wizualizacji danych to nie narzędzie jest najważniejsze, ale komunikatywność historii, którą się graficznie przedstawia.

Jak ją ćwiczyć?

Akurat tutaj duże nadzieje pokładam w pracach domowych. W ramach ćwiczeń, co tydzień, studenci wyszukują w gazetach czy portalach informacyjnych dane lub wykresy, a następnie przygotowują wizualizacje danych z użyciem narzędzi, które akurat w danym tygodniu omawiamy.

Poniżej pokażę dwie bardzo ciekawe prace domowe z pierwszego tygodnia zajęć (ggplot2).

Pani Ewa Baranowska znalazła w Rzeczpospolitej poniższą tabelę dotyczącą liczby spraw prowadzonych przez prokuratorów w różnych krajach.

I z odrobiną magii w ggplot2 powstał poniższy wykres. Nieporównywalnie czytelniejszy niż ww. tabela. Wyraźnie widać różnice pomiędzy wschodem a zachodem Europy.

Drugą pracę, która przypadła mi do gustu, wykonał pan Maksymilian Mazur. Dane dotyczące walki pomiędzy Danem Hendersonem a Michaelem Bispingiem (tutaj link) przedstawił je za pomocą poniższego wykresu.

Wyraźnie widać różnice pomiędzy 2 i 5 rundą. Nie było jej widać w oryginalnej grafice.

Gramatyka języka wizualizacji danych

Screen Shot 2016-03-20 at 20.39.28

,,Gramatyka języka wizualizacji danych” to nowy rozdział w drugim wydaniu ,,Zbioru esejów o sztuce prezentowania danych”. Jest on już dostępny online na stronie http://biecek.pl/Eseje/indexGramatyka.html.

Ten esej jest oparty głównie o materiały z książki Lelanda Wilkinsona ,,The Grammar of Graphics”, moje doświadczenia z pakietem ggplot2 oraz eksperymenty z narzędziami do wyrażania komunikatów opartych o dane (w tym wykresów statystycznych, ale nie tylko).

To nie są materiały do nauki pakietu ggplot2 (ggplot2 to jedna z implementacji gramatyki języka wizualizacji, być może to najbardziej dojrzała implementacja ale z pewnością nie doskonała, jeszcze). Jest to raczej próba rozłożenia na niezależne części elementów wykresu, które są w niezależny sposób z wykresu odczytywane.

Użycie pakietu archivist pozwoliło na umieszczenie uchwytów oraz instrukcji odtwarzających wszystkie wykresy w tym eseju. Kompletna lista wykresów, kodów R i uchwytów archivista znajduje się tutaj https://rawgithub.com/pbiecek/Eseje/master/GamatykaGrafiki.html.

Gdyby ktoś szukał polskojęzycznych materiałów poświęconych nauce podstaw ggplot2 to polecam ,,Przewodnik po pakiecie R” (tutaj lub tutaj). Angielskojęzycznym materiałów jest wiele, można zacząć od strony domowej samego projektu http://docs.ggplot2.org/current/.

geom_christmas_tree(): a new geom for ggplot2 v2.0

iris2
Version 2.0 of the ggplot2 package (on GitHub) has a very nice mechanism for adding new geoms and stats (more about it here).
Christmas are coming, so maybe one would like to make his plots more tree’ish?
Below you will find a definition of geom_christmas_tree() geom. It supports following aesthetics: size (number of segments), fill, color, x and y.

With mpg data you can plot a colourful forest.

cars

Czytaj dalej geom_christmas_tree(): a new geom for ggplot2 v2.0

Transformacje zmiennych, skali, współrzędnych w ggplot2

Przygotowuję nowy rozdział ,,Esejów…”. Będzie on dotyczył The Grammar of Graphics i jej implementacji w pakiecie ggplot2. Systematyzując poszczególne elementy składni zdarzają się różne smaczki i dzisiaj o jednym z nich, czyli o tym jak na wykresach stosować transformacje.

Zacznijmy od wykresu bez żadnych transformacji. Za przykład wykorzystamy dane o irysach. Do wykresu dodamy punkty (geom_point) oraz prostą trendu liniowego (geom_smooth).

Zobaczmy jak wygląda ta zależność po transformacji logarytmicznej.
Pakiet ggplot2 przewiduje transformacje na trzech poziomach: zmiennych, skali i układu współrzędnych. Zobaczmy czym się one różnią i jak je wykonać.

Czytaj dalej Transformacje zmiennych, skali, współrzędnych w ggplot2

Kto bierze korepetycje z matmy? – jak to zrobić w R?

W poprzednim wpisie pokazywaliśmy, którzy z uczniów w Polsce mają częściej zajęcia dodatkowe z matematyki.

A dziś pokażemy jak taki obrazek zrobić samodzielnie! Wystarczy przekopiować kilka linii kodu do R i mamy wykres dla Polski lub innego, wybranego kraju.

Zrobimy to w czterech krokach.

Czytaj dalej Kto bierze korepetycje z matmy? – jak to zrobić w R?