Animētas joslu diagrammas, kuras var iegult tieši ierakstā jebkurā vietnē, kļūst arvien populārākas. Tie parāda jebkuru raksturlielumu izmaiņu dinamiku noteiktā laika periodā un dara to skaidri. Apskatīsim, kā tos izveidot, izmantojot R un vispārīgās pakotnes.
Šie divi ir ārkārtīgi nepieciešami. Turklāt, lai pārvaldītu datus, notīrītu masīvu un attiecīgi formatētu, būs nepieciešami tīrības, sētnieka un svari.
Dati
Sākotnējā datu kopa, ko izmantosim šajā projektā, ir lejupielādēta no Pasaules Bankas vietnes. Šeit tie ir - Pasaules Bankas dati. Tos pašus datus, ja nepieciešams gatavus, var lejupielādēt no projektu mapes.
Kāda veida informācija tā ir? Izlasē ir ietverta vairuma valstu IKP vērtība vairākus gadus (no 2000. līdz 2017. gadam).
Datu apstrāde
Mēs izmantosim zemāk ievietoto kodu, lai sagatavotu nepieciešamo datu formātu. Mēs notīrām kolonnu nosaukumus, pārvēršam skaitļus skaitļu formātā un pārveidojam datus, izmantojot apkopošanas () funkciju. Visu, kas tiek saņemts gdp_tidy.csv, saglabājam turpmākai lietošanai.
Pilna faktisko histogrammu kopuma uzzīmēšana, izmantojot ggplot2.
Animējiet statiskās histogrammas ar vēlamajiem parametriem, izmantojot gganimate.
Pēdējais solis ir atveidot animāciju vēlamajā formātā, ieskaitot GIF vai MP4.
Notiek bibliotēku ielāde
bibliotēka (sakārtots)
bibliotēka (gganimate)
Datu vadība
Šajā darbībā jums ir jāfiltrē dati, lai iegūtu 10 labākās valstis katrā gadā. Pievienosim vairākas kolonnas, kas ļaus mums parādīt histogrammas leģendu.
gdp_tidy <- read_csv("./data/gdp_tidy.csv")
gdp_formatted <- gdp_tidy %>%
group_by(year) %>%
# The * 1 makes it possible to have non-integer ranks while sliding
mutate(rank = rank(-value),
Value_rel = value/value[rank==1],
Value_lbl = paste0(" ",round(value/1e9))) %>%
group_by(country_name) %>%
filter(rank <=10) %>%
ungroup()
Statisku histogrammu veidošana
Tagad, kad mums ir datu pakotne vajadzīgajā formātā, mēs sākam zīmēt statiskas histogrammas. Pamatinformācija - 10 labākās valstis ar maksimālo IKP atlasītajā laika intervālā. Mēs veidojam grafikus katram gadam.
Grafiku izveide, izmantojot ggplot2, ir ļoti vienkārša. Kā redzat koda sadaļā iepriekš, funkcijai theme() ir vairāki galvenie punkti. Tie ir nepieciešami, lai visi elementi atdzīvinātu bez problēmām. Ja nepieciešams, daži no tiem var netikt parādīti. Piemērs: tiek uzzīmētas tikai vertikālās režģa līnijas un leģendas, bet no apgabala tiek noņemti asu nosaukumi un vairāki citi komponenti.
animācija
Galvenā funkcija šeit ir transfer_states (), tā savieno atsevišķus statiskus grafikus. view_follow() tiek izmantots režģa līniju zīmēšanai.
anim = staticplot + transition_states(year, transition_length = 4, state_length = 1) +
view_follow(fixed_x = TRUE) +
labs(title = 'GDP per Year : {closest_state}',
subtitle = "Top 10 Countries",
caption = "GDP in Billions USD | Data Source: World Bank Data")
Atveidošana
Kad animācija ir izveidota un saglabāta animācijas objektā, ir pienācis laiks to renderēt, izmantojot funkciju animēt(). Animate() izmantotais renderētājs var atšķirties atkarībā no nepieciešamā izvades faila veida.