Visualisasi Perbandingan Corona Virus di Empat Negara
Assalamualaikum Wr. Wb.
Hallo teman — teman , bagaimana kabarnya nih? Semoga selalu dalam keadaan sehat wal afiat dalam kondisi saat ini. Aamiin.
Pada kesempatan kali ini, saya akan melanjutkan projek dari tulisan sebelumnya yakni akan membuat visualisasi dari perbadingan Corona Virus di empat negara. ^_^
Yuk kita langsung terjun ke kodingannya ya!
Pertama, install package plotly, tidyr, dplyr, dan magrittr.
install.packages ("plotly")
install.packages ("tidyr")
install.packages ("magrittr")
perpustakaan (plotly)
perpustakaan (tidyr)
perpustakaan (magrittr)
Sebelumnya, mengingatkan kembali bagi yang belum meng-install package silahkan di install terlebih dahulu ya, bagi yang sudah silahkan di aktifkan pakcage tersebut dengan perintah library(nama package).
install.packages (c ("devtools", "flexdashboard", "leaflet", "leafpop"))
perpustakaan (devtools)
perpustakaan (flexdashboard)
perpustakaan (leaflet)
perpustakaan (leaflet) perpustakaan (leafpop)
Jika sintaks di atas sudah di install, selanjutnya kita akan meng-install package coronavirus from Rami Krispin.
devtools :: install_github ("RamiKrispin / coronavirus")
perpustakaan (coronavirus)
Ditunggu ya proses instalasinya ^_^.
Kemudian, kita akan melihat isi dari package coronavirus dengan menggunakan sintaks seperti di bawah ini :
search ()
ls (2)
Kemudian, kita akan meng-update dan melihat data tersebut.
update_dataset ()
Lihat (coronavirus)
Data hasil update yakni sekitar 118.535 data.
Kemudian kita akan melihat struktur datanya.
str (coronavirus)
Kemudian kita akan melihat data corona virus dengan salah satu variabel yakni country.
$ coronavirus negara
Kemudian, kita akan mulai untuk merancang tampilan visualisasinya, sintaks dapat di lihat di bawah :
df <- coronavirus%>%
dplyr :: filter (negara == "Indonesia")%>%
dplyr :: group_by (negara, jenis)%>%
dplyr :: merangkum (jumlah = jumlah (kasus))
lalu panggil objek yang telah dibuat.
df
Kemudian akan muncul hasilnya seperti ini :
kemudian kita akan mulai membuat untuk data hariannya ya, bisa menggunakan perintah berikut:
df_harian <- coronavirus%>%
dplyr :: filter (negara == "Indonesia")%>%
dplyr :: filter (date> = "2020-03-01")%>%
dplyr :: group_by (tanggal, jenis) %>%
dplyr :: summarize (total = jumlah (case, na.rm = TRUE))%>%
tidyr :: pivot_wider (
names_from = type,
values_from = total
)%>%
dplyr :: atur (tanggal)%>%
dplyr :: ungroup ()%>%
dplyr :: bermutasi (aktif = dikonfirmasi - kematian)%>%
dplyr :: bermutasi (
dikonfirmasi_cum = cumsum (dikonfirmasi),
death_cum = cumsum (kematian),
active_cum = cumsum (aktif)
)
kemudian panggil dengan sintaks berikut :
df_harian
maka akan muncul hasilnya seperti berikut :
Kemudian, kita akan melakukan visualisasi dengan menggunakan perintah berikut :
confirm_color <- "purple" active_color <- "# 1f77b4"
recovered_color <- "forestgreen"
death_color <- "red"
plotly :: plot_ly (data = df_harian)%>%
plotly :: add_trace (
x = ~ tanggal,
# y = ~ active_cum,
y = ~ confirm_cum,
type = "scatter",
mode = "lines + spiders",
name = "Confirmed",
line = daftar (warna = active_color),
marker = daftar (color = active_color)
)%>%
plotly :: add_trace (
x = ~ tanggal,
y = ~ death_cum,
ketik = " sebar ",
mode = "garis + spidol",
nama = "Kematian",
line = daftar (warna = death_color),
marker = list (color = death_color)
)%>%
plotly :: add_annotations (
x = as.Date ("2020-03-02-02"),
y = 1,
teks = tempel ("Kasus Pertama"),
xref = "x ",
yref =" y ",
panah = 5,
panah = 3 , panah
ukuran = 1,
showarrow = BENAR,
kapak = -10,
ay = -80
)%>%
plotly :: add_annotations (
x = as.Date (" 2020) -03-11 "),
y = 3,
text = paste (" Kematian Pertama "),
xref =" x ",
yref =" y ",
panah = 5,
panah = 3,
panahukuran = 1,
showarrow = BENAR,
kapak = -90,
ay = -90
)%>%
plotly :: layout (
title = "",
yaxis = daftar (title = "Jumlah kumulatif banyak kasus"),
xaxis = daftar (judul = "Tanggal"),
legenda = daftar (x = 0,1 , y = 0,9),
hovermode = "bandingkan"
)
Maka akan muncul hasilnya seperti berikut :
Nah, sekarang kita akan melakukan perbandingan kasus corona virus harian dari 4 negara yang ada di ASEAN, yakni Indonesia, Malaysia, Brunei, dan Filipina. Untuk sintaksnya yakni seperti berikut:
konfirmasi_harian <- coronavirus%>%
dplyr :: filter (ketik == "dikonfirmasi")%>%
dplyr :: filter (date> = "2020-02-25")%>%
dplyr :: mutate (negara = negara) %>%
dplyr :: group_by (tanggal, negara)%>%
dplyr :: merangkum (total = jumlah (kasus))%>%
dplyr :: ungroup ()%>%
tidyr :: pivot_wider (names_from = negara, values_from = total)
konfirmasi_harian%>%
plotly :: plot_ly ()%>%
plotly :: add_trace (
x = ~ date,
y = ~ Indonesia,
ketik = "scatter",
mode = "lines + spiders",
name = "Indonesia"
) %>%
plotly :: add_trace (
x = ~ date,
y = ~ Brunei,
type = "sebar",
mode = "lines + spiders",
name = "Brunei"
)%>%
plotly :: add_trace (
x = ~ date,
y = ~ Filipina,
ketik = "scatter",
mode = "lines + spiders",
name = "Philippines "
)%>%
plotly :: add_trace (
x = ~ tanggal,
y = ~ Malaysia,
ketik =" scatter ",
mode =" lines + spiders ",
name =" Malaysia "
)%>%
plotly :: tata letak (
judul = "",
legenda = daftar (x = 0,1, y = 0,9),
yaxis = daftar (judul = "Jumlah kasus positif baru"),
xaxis = daftar (judul = "Tanggal"),
hovermode = "bandingkan",
margin = daftar (
b = 10,
t = 10,
path = 2
)
)
Nah , kemudian hasilnya akan muncul seperti berikut :
wah ternyata negara kita menempati posisi tertinggi untuk kasus corona virus harian di bandingkan dengan Brunei, Philippines, dan Malaysia.
kemudian kita akan melihat kematian akibat corona virus ini dengan menggunakan sintaks seperti berikut :
kematian_harian <- coronavirus%>%
dplyr :: filter (ketik == "death")%>%
dplyr :: filter (date> = "2020-02-25")%>%
dplyr :: mutate (negara = negara) %>%
dplyr :: group_by (tanggal, negara)%>%
dplyr :: merangkum (total = jumlah (kasus))%>%
dplyr :: ungroup ()%>%
tidyr :: pivot_wider (names_from = negara, values_from = total)
kematian_harian%>%
plotly :: plot_ly ()%>%
plotly :: add_trace (
x = ~ date,
y = ~ Indonesia,
ketik = "scatter",
mode = "lines + spiders",
name = "Indonesia"
) %>%
plotly :: add_trace (
x = ~ date,
y = ~ Brunei,
type = "sebar",
mode = "lines + spiders",
name = "Brunei"
)%>%
plotly :: add_trace (
x = ~ date,
y = ~ Filipina,
ketik = "scatter",
mode = "lines + spiders",
name = "Philippines "
)%>%
plotly :: add_trace (
x = ~ tanggal,
y = ~ Malaysia,
ketik =" scatter ",
mode =" lines + spiders ",
name =" Malaysia "
)%>%
plotly :: tata letak (
judul = "",
legenda = daftar (x = 0,1, y = 0,9),
yaxis = daftar (judul = "Jumlah kematian baru"),
xaxis = daftar (judul = "Tanggal"),
hovermode = "bandingkan",
margin = daftar (
b = 10,
t = 10,
path = 2
)
)
Maka akan muncul hasilnya seperti berikut:
Berdasarkan gambar di atas, jumlah kematian baru harian lagi — lagi menempati posisi paling tinggi di bandingkan negara Brunei, Philippines, dan Malaysia.
Harapannya kasus corona virus di Indonesia bisa segera berakhir. Aamiin.
Nah mungkin untuk pembahasan pada kali ini di cukupkan sampai disini terlebih dahulu. Kurang lebihnya dari saya pribadi mohon maaf, dan terima kasih bagi teman — teman yang sudah bersedia membaca, mempraktekkan dan memberi claps.
Tetap aman!
Referensi :