Mae siartiau bar animeiddiedig y gellir eu mewnosod yn uniongyrchol i bostiad ar unrhyw wefan yn dod yn fwyfwy poblogaidd. Dangosant ddeinameg newidiadau mewn unrhyw nodweddion dros gyfnod penodol a gwnΓ’nt hyn yn glir. Gadewch i ni weld sut i'w creu gan ddefnyddio pecynnau R a generig.
Mae'r ddau hyn yn hynod angenrheidiol. Yn ogystal, bydd angen dull taclus, porthor a chloriannau i reoli'r data, glanhau'r arae a fformat yn unol Γ’ hynny.
Data
Mae'r set ddata wreiddiol y byddwn yn ei defnyddio yn y prosiect hwn yn cael ei lawrlwytho o wefan Banc y Byd. Dyma nhw - Data Banc y Byd. Gellir lawrlwytho'r un data, os oes ei angen arnoch yn barod, o ffolderi prosiect.
Pa fath o wybodaeth yw hwn? Mae'r sampl yn cynnwys gwerth CMC y rhan fwyaf o wledydd ers sawl blwyddyn (rhwng 2000 a 2017).
Prosesu data
Byddwn yn defnyddio'r cod a bostiwyd isod i baratoi'r fformat data gofynnol. Rydyn ni'n clirio enwau'r colofnau, yn troi'r rhifau i fformat rhif, ac yn trosi'r data gan ddefnyddio'r swyddogaeth casglu (). Rydym yn cadw popeth a dderbynnir yn gdp_tidy.csv i'w ddefnyddio ymhellach.
Plotio set gyflawn o histogramau go iawn gan ddefnyddio ggplot2.
Animeiddio histogramau statig gyda pharamedrau dymunol gan ddefnyddio gganimate.
Y cam olaf yw gwneud yr animeiddiad yn y fformat a ddymunir, gan gynnwys GIF neu MP4.
Llwytho llyfrgelloedd
llyfrgell (mynd taclus)
llyfrgell (gganimate)
Rheoli data
Yn y cam hwn, mae angen i chi hidlo'r data i gael y 10 gwlad orau ar gyfer pob blwyddyn. Gadewch i ni ychwanegu sawl colofn a fydd yn caniatΓ‘u inni arddangos chwedl ar gyfer yr histogram.
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()
Adeiladu histogramau statig
Nawr bod gennym becyn data yn y fformat gofynnol, rydym yn dechrau llunio histogramau statig. Gwybodaeth sylfaenol - y 10 gwlad orau gydag uchafswm CMC ar gyfer yr egwyl amser a ddewiswyd. Rydym yn creu graffiau ar gyfer pob blwyddyn.
Mae creu plotiau gan ddefnyddio ggplot2 yn syml iawn. Fel y gwelwch yn yr adran cod uchod, mae sawl pwynt allweddol gyda'r swyddogaeth thema (). Maent yn angenrheidiol fel bod pob elfen yn animeiddio heb broblemau. Efallai na fydd rhai ohonynt yn cael eu harddangos os oes angen. Enghraifft: Dim ond y llinellau grid fertigol a'r chwedlau sy'n cael eu tynnu, ond mae'r teitlau echelin a sawl cydran arall yn cael eu tynnu o'r ardal.
Animeiddio
Y ffwythiant allweddol yma yw transition_states(), mae'n pwytho graffiau statig ar wahΓ’n at ei gilydd. defnyddir view_follow() i dynnu llinellau grid.
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")
Rendro
Unwaith y bydd yr animeiddiad wedi'i greu a'i storio yn y gwrthrych anim, mae'n bryd ei rendro gan ddefnyddio'r ffwythiant animate(). Gall y rendr a ddefnyddir yn animeiddio () fod yn wahanol yn dibynnu ar y math o ffeil allbwn sydd ei hangen.