V poslednom článku som písal o spôsobe, ako získať dáta z Google Analytics pomocou R. V dnešnom sa pozrieme na možnosti vizuálizácie dát. Budeme používať knižnicu ggplot2 a predstavíme si 5 zaujímavých tipov, respektíve grafov, ktoré vám môžu výrazne pomôcť.

Predým ako začneme som chcel Vám ešte ukázať niekoľko zaujiímavých zdrojov na vaše vzdelávanie a pomoc pri práci z R-kom keďže bol o to záujem a menšie technické problémy s našim komentovacím systémom mi znemožnili to zazdielať.

Výborným zdrojom na prácu R a Google Analytics je stránka www.dartistics.com. Je to stránka špeciálne pre nadšencov a profesionálov z digitálnej analytiky a je to skvelý štartovací bod aby ste získali vačšiu istotu pri práci z R. následne doporučujem pri práci z R používať štandardne stránku stackoverflow.com  kde si viete dohladať odpovede na vaše otázky. Som presvedčený, že to je najlepšia cesta ako sa naučiť pracovať s R lebo musíte si spraviť tu námahu prísť na veci, ktoré chcete zistiť a potom si musíte ešte poradiť aj s tým ako to spraviť. Ale výsledok bude skvelý pre váš vývoj a prácu s R.

A toto je ďalší zaujímavý zdroj na prácu s R a vizualizáciou – https://www.statmethods.net .

Tak a teraz poďme priamo k našej téme. Aby sme mohli dáta vizualizovať, najskôr ich potrebujeme mať dostupné. Opäť budeme pracovať s dátami z Google Analytics.

Nižšie vidíte štruktúru nášho query. Ak ste nečítali predchádzajúci článok o tom, ako vytvoriť query na získanie dát z Google Analytics, môžete si ho prečítať tu.

Naše query je nasledovné:

gadata <- google_analytics_4(view_id,

                            date_range = c(„2018-09-01“, „2019-03-15“),

                            metrics = c(„sessions“,“pageviewsPerSession“),                                                                                                                                                                       

                            dimensions = c(„date“, „deviceCategory“),

                            max = -1)

Tabuľka by mala vyzerať nasledovne:

Osobne sa mi nepáči, že pageviewsPerSession sú s viacerými desatinnými číslami, tak si ich ešte predtým upravíme na celé číslo.

To spravíme nasledujúcim spôsobom:

gadata$pageviewsPerSession <-  round(gadata$pageviewsPerSession, digits = 0)

Parameter digits vlastne určuje na koľko desatinných čísel  chceme zaokrúhliť .

NOTE:

Ak sa chcete pohrať s inými metrikami alebo dimenziami, stačí ich vložiť do vytvoreného query a získať dáta, s ktorými chcete pracovať. Tieto som vybral len ako ukážku na prácu s ggplot2, aby ste videli, ako túto knižnicu použiť na vizualizáciu dát a reprodukovanie.

Aké grafy si ukážeme?

  1. Boxplot
  2. Stack bar Chart
  3. Time Series
  4. Scatterplot
  5. Histogram

Tak a poďme si ich postupne predstaviť .

1.Vizualizácia pomocou boxplot grafu

Boxplot je grafické znázornenie štatistických údajov na základe minima, prvého kvartilu, mediánu, tretieho kvartilu a maxima. Termín krabicový graf“ pochádza zo skutočnosti, že graf vyzerá ako obdĺžnik s čiarami siahajúcimi zhora nadol.

Tento štýl grafu rád využívam na pozorovanie zmien napríklad v počte relácii, ktoré vedú na web. Viete si rýchlo všimnúť, že priemer/medián je počas niektorých období väčší.  Môžete tiež spozorovať nejaké anomálie, ktoré sú v boxplote zvýraznené bodkami.

V každom prípade vám to dáva insight, že by bolo dobré dané výkyvy alebo nárasty analyzovať. Viete tak napríklad ozrejmiť výkon marketingovej kampane, keď zistíte, že k vám prichádza neaktívna návšteva, ktorou môžu byť napríklad boti.

Zdroj obrázku: IPA Slovakia

A teraz si poďme vytvoriť náš graf:  

boxplot <- ggplot(gadata, aes(x=deviceCategory, y=sessions, fill=deviceCategory)) + geom_boxplot()

Každá vizualizácia začína funkciou ggplot() a vnútri danej funkcie je na prvom mieste ďalšia tabulka, ktorú sme si nazvali gadata. Potom tam je čas s názvom  aes(), presnejšie aesthetics.

V časti aes() vlastne špecifikujeme, čo, kde a ako chceme mať. V našom prípade si chceme vizualizovať zariadenia na ose x a relácie na ose y. Parameter fill= nám zas rozsegmentuje boxplot podľa zariadení. Geom_boxplot už len určuje spôsob, akým grafom chceme dané dáta vizualizovať.

A celé to vyzerá asi takto:

# Calculate the group means with aggregate

means <- aggregate(sessions ~ deviceCategory, gadata, mean )

plotchart <- gg + geom_text(data = means, aes(label = sessions, y = sessions + 0.20))

2.Vizualizácia pomocou stack chart grafu

Stohovaný graf (alebo stohovaný stĺpcový graf) je graf, ktorý používa stĺpce na porovnanie kategórií údajov so schopnosťou rozobrať a porovnať časti celku. Každý stĺpec v grafe predstavuje celok. Segmenty v stĺpci predstavujú rôzne časti alebo kategórie tohto celku.

 

Ide o skvelý graf napríklad na porovnanie relácií či transakcií z kampaní alebo čohokoľvek, čo vám pomôže zodpovedať vašu otázku a získať danú informáciu.

Na obrázku vyššie vizualizujeme pomer návštev z desktopu, mobilu a tabletu.Použili sme aj trendovú líniu, ktorá nám ukáže, že mobil začal byť zaujímavejším zariadením, cez ktorý prichádzajú ľudia na náš web. Je dôležité analyzovať, prečo tomu tak je a či je váš web pripravený na takýto traffic z mobilu z pohľadu užívatelnosti. Ak máte ecommerce stránku, bolo by zaujímavé rovnakým spôsobom vizualizovať pomer nákupov z mobilu, desktopu a tabletu.

Ukážme si ako tento graf vytvoriť:

stackbar <- ggplot(data=gadata, aes(x=date, y=sessions, fill=deviceCategory)) +

 geom_bar(stat=“identity“) + geom_smooth(aes(date, sessions))

plot(stackbar)

Podobne, ako pri boxplote, používame funkciu ggplot() a následne definujeme dáta, ktoré chceme vizualizovať. Prvá časť je úplne totožná  s naším prvým grafom. Tentokrát ale nebudeme vizualizovať pomoc geom_boxplot, ale geom_bar. Tým pádom získame graf vyššie.

Na vizualizáciu trendu som tiež použil geom_smooth. Na konci článku sa s vami podelím o stránky, kde sa viete naučiť, ako vytvoriť graf, ktorý potrebujete.

PS: Ak by ste chceli vizualizovať transakcie podobný spôsobom, stačí len namiesto relácií vložiť dáta z transakcií.

3.Vizualizácia pomocou time series grafu

Ďalším zaujímavým grafom je time series graf. Graf časových radov zobrazuje dátové body v postupných časových intervaloch. Každý bod na grafe zodpovedá času a meranému množstvu.

Všeobecne platí, že horizontálna os grafu sa používa na vykreslenie času a vertikálne osi určujú hodnoty premennej (v našom prípade metriky, ako transakcie/relácie/počet stránok za reláciu), ktorá sa meria.

ggplot(gadata, aes(date)) +

 geom_line(aes(y = sessions, colour = „sessions“)) +

 geom_line(aes(y = pageviewsPerSession, colour = „pageviewsPerSession“))

4. Vizualizácia pomocou scatter plotu

Rozptylový graf je množina bodov vynesených na horizontálnej a vertikálnej osi.

Rozptylové grafy sú dôležité v štatistike, pretože môžu ukázať rozsah korelácie (ak existuje) medzi hodnotami pozorovaných veličín alebo javov (nazývaných premenné). Ak medzi premennými neexistuje žiadna korelácia, body sa náhodne rozptýlia v súradnicovej rovine. Ak existuje veľká korelácia, body sa sústredia v blízkosti priamky. Scatter grafy sú užitočnými nástrojmi na vizualizáciu údajov na ilustráciu trendu.

Ak by sme chceli použiť segmentáciu v našom scatterplote, tak použijeme následovné:

plotrelseg <- ggplot(gadata, aes(x=sessions, y=transactions, color=deviceCategory)) + geom_point(shape=1)

plot(plotrelseg)

5. Vizualizácia pomocou histogramu

Histogram je graf, ktorý vám umožní objaviť a zobraziť základné rozdelenie frekvencie (tvaru) množiny nepretržitých údajov. To umožňuje kontrolu údajov pre jeho základnú distribúciu (napr. normálne rozdelenie), odľahlé hodnoty, skewness atď. Príklad histogramu a spracovaných údajov, z ktorých bol vytvorený, je uvedený nižšie:

ggt <- ggplot(gadata, aes(x=sessions)) +

 geom_histogram(aes(y=..density..),      # Histogram with density instead of count on y-axis

                binwidth=50,

                colour=“black“, fill=“white“) +

 geom_density(alpha=.2, fill=“#FF6666″)  # Overlay with transparent density plot

plot(ggt)

Histogram je skvelý graf, kde si môžete do rôznych košov rozdeliť naše dáta. A to buď podľa vašich preferencií, alebo výpočtu, koľko košov použiť a v akej veľkosti.

TIP:

Napríklad metrika ako Priemerný čas na stránke. Je zaujímavé ju analyzovať (aj keď má svoje nedostatky), ale v Google Analytics nám sama o sebe veľa nepovie. Ale ak by sme si túto metriku vizualizovali pomocou histogramu a zatriedili koše napríklad po 2 minutových intervaloch  tak by sme získali omnoho zaujímavejšie dáta o tom ako dlho u nás návštevníci strávia času.

Záver

Predstavili sme si 5 zaujímavých grafov, pomocou ktorých viete vizualizovať vaše dáta. Bez ohľadu na to, či sú z Google Analytics alebo nie, syntax je stále rovnaká. Ak by ste mali nejaké zaujímavé nápady na vizualizáciu dát pomocou R, určite neváhajte a napíšte nám komentár.