R istifadə edərək animasiya edilmiş histoqramlar yaradın
İstənilən veb-saytda birbaşa yazıya daxil edilə bilən cizgi zolağı diaqramları getdikcə populyarlaşır. Müəyyən bir zaman ərzində hər hansı xüsusiyyətlərdəki dəyişikliklərin dinamikasını nümayiş etdirirlər və bunu aydın şəkildə edirlər. R və ümumi paketlərdən istifadə edərək onları necə yaratmağa baxaq.
Bu ikisi son dərəcə zəruridir. Bundan əlavə, məlumatları idarə etmək, massivi təmizləmək və buna uyğun formatlaşdırmaq üçün səliqəli, qapıçı və tərəzi tələb olunacaq.
Məlumat
Bu layihədə istifadə edəcəyimiz orijinal məlumat dəsti Dünya Bankının saytından endirilib. Budurlar - Dünya Bankının Məlumatı. Eyni məlumatları, əgər hazır ehtiyacınız varsa, buradan endirmək olar layihə qovluqları.
Bu nə cür məlumatdır? Nümunə bir neçə il (2000-ci ildən 2017-ci ilə qədər) əksər ölkələrin ÜDM dəyərini ehtiva edir.
Verilənlərin emalı
Tələb olunan məlumat formatını hazırlamaq üçün aşağıda yerləşdirilən kodu istifadə edəcəyik. Sütun adlarını təmizləyirik, rəqəmləri rəqəm formatına çeviririk və toplama () funksiyasından istifadə edərək məlumatları çeviririk. Biz gdp_tidy.csv-də alınan hər şeyi sonrakı istifadə üçün saxlayırıq.
Ggplot2 istifadə edərək, faktiki histoqramların tam dəstini tərtib etmək.
gganimate istifadə edərək istədiyiniz parametrlərlə statik histoqramları canlandırın.
Son addım animasiyanı istədiyiniz formatda, o cümlədən GIF və ya MP4 formatında göstərməkdir.
Kitabxanalar yüklənir
kitabxana (səliqəli)
kitabxana(gganimate)
Məlumatların idarə olunması
Bu addımda, hər il üçün ilk 10 ölkəni əldə etmək üçün məlumatları süzgəcdən keçirməlisiniz. Histoqram üçün əfsanə göstərməyə imkan verəcək bir neçə sütun əlavə edək.
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()
Statik histoqramların qurulması
İndi tələb olunan formatda məlumat paketimiz var, biz statik histoqramları çəkməyə başlayırıq. Əsas məlumat - seçilmiş vaxt intervalı üçün maksimum ÜDM-ə malik ilk 10 ölkə. Hər il üçün qrafiklər yaradırıq.
Ggplot2 istifadə edərək süjetlər yaratmaq çox sadədir. Yuxarıdakı kod bölməsində gördüyünüz kimi theme() funksiyası ilə bağlı bir neçə əsas məqam var. Bütün elementlərin problemsiz canlanması üçün onlar lazımdır. Lazım gələrsə, onlardan bəziləri göstərilməyə bilər. Nümunə: Yalnız şaquli şəbəkə xətləri və əfsanələr çəkilir, lakin ox başlıqları və bir neçə digər komponentlər ərazidən çıxarılır.
canlandırma
Burada əsas funksiya keçid_states() funksiyasıdır, o, ayrı-ayrı statik qrafikləri birləşdirir. view_follow() tor xətləri çəkmək üçün istifadə olunur.
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")
Göstərir
Animasiya yaradıldıqdan və anim obyektində saxlandıqdan sonra onu animate() funksiyasından istifadə edərək göstərməyin vaxtı gəldi. animate()-də istifadə olunan renderer tələb olunan çıxış faylının növündən asılı olaraq fərqli ola bilər.