bed <- data.frame(
tanggal = factor(c("29 Jan", "30 Jan", "31 Jan", "1 Feb"),
levels = c("29 Jan", "30 Jan", "31 Jan", "1 Feb")),
persen = c(54, 57, 57, 60)
)
bed$x <- seq_len(nrow(bed))
ggplot(bed, aes(x = x, y = persen)) +
geom_line(colour = "navy", linewidth = 1.2) +
geom_point(colour = "navy", size = 4) +
geom_text(aes(label = paste0(persen, "%")), vjust = -1.2,
fontface = "bold", colour = col_teks, size = 4.5) +
scale_x_continuous(breaks = bed$x, labels = levels(bed$tanggal),
expand = expansion(mult = c(0.08, 0.08))) +
scale_y_continuous(limits = c(40, 70), breaks = seq(40, 70, 5),
labels = function(x) paste0(x, "%")) +
labs(title = "Tingkat keterisian tempat tidur RS di DKI Jakarta 29 Januari - 1 Februari",
x = "Tanggal", y = "Tingkat keterisian tempat tidur",
caption = "Sumber data: Dinas Kesehatan DKI Jakarta.\nCatatan: sumbu tegak dipotong pada 40% agar perubahan harian terlihat.")
Tingkat keterisian tempat tidur rumah sakit di DKI Jakarta meningkat dari 54% pada 29 Januari menjadi 60% pada 1 Februari, atau naik 6 poin persentase dalam tiga hari pengamatan. Kenaikan terjadi pada 30 Januari, lalu bertahan di 57% pada 31 Januari, dan naik lagi pada 1 Februari. Artinya beban rumah sakit bertambah, tetapi pada periode ini keterisian masih di bawah 100%. Dengan hanya empat titik, data ini cukup untuk menggambarkan arah perubahan, tetapi belum cukup untuk meramalkan tren jangka panjang.
bayar <- data.frame(
metode = c("M-Banking", "COD", "Paylater / Cicilan", "Lainnya"),
persen = c(64, 20, 2, 14)
)
# urutan tampilan: terbesar di atas, "Lainnya" di paling bawah
bayar$metode <- factor(bayar$metode, levels = rev(bayar$metode))
bayar$sorot <- bayar$metode == "M-Banking"
ggplot(bayar, aes(x = persen, y = metode, fill = sorot)) +
geom_col(width = 0.65) +
geom_text(aes(label = paste0(persen, "%")), hjust = -0.2,
fontface = "bold", colour = col_teks, size = 4.5) +
scale_fill_manual(values = c(`TRUE` = col_sorot, `FALSE` = col_netral),
guide = "none") +
scale_x_continuous(limits = c(0, 100), breaks = seq(0, 100, 20),
labels = function(x) paste0(x, "%"),
expand = expansion(mult = c(0, 0.02))) +
labs(title = "Persentase Pemilihan Metode Pembayaran",
x = "Persentase", y = "Metode Pembayaran") +
theme(panel.grid.major.y = element_blank(),
axis.text.y = element_text(size = 12, colour = col_teks))
M-Banking adalah metode pembayaran yang paling dominan (64%), hampir tiga kali lipat COD yang berada di urutan kedua (20%). Kategori Lainnya menyumbang 14%, sedangkan Paylater/Cicilan hanya 2%. Dua metode teratas (M-Banking dan COD) bersama-sama mencakup 84% dari seluruh pembayaran. Hal ini sejalan dengan narasi pada slide bahwa M-Banking disukai karena mudah dan tanpa kontak, sehingga cocok pada masa pandemi.
Slide 9 menampilkan versi lain, yaitu dua diagram batang mendatar untuk 34 provinsi: kiri dengan urutan data, kanan terurut dari nilai terbesar. Pada keduanya hanya sebagian label provinsi yang tampil (selang-seling) karena ruang sempit, dan tidak ada judul sumbu.
komp <- data.frame(
provinsi = c("ACEH","SUMATERA UTARA","SUMATERA BARAT","RIAU","JAMBI","SUMATERA SELATAN",
"BENGKULU","LAMPUNG","KEP. BANGKA BELITUNG","KEP. RIAU","DKI JAKARTA",
"JAWA BARAT","JAWA TENGAH","DI YOGYAKARTA","JAWA TIMUR","BANTEN","BALI",
"NUSA TENGGARA BARAT","NUSA TENGGARA TIMUR","KALIMANTAN BARAT",
"KALIMANTAN TENGAH","KALIMANTAN SELATAN","KALIMANTAN TIMUR","KALIMANTAN UTARA",
"SULAWESI UTARA","SULAWESI TENGAH","SULAWESI SELATAN","SULAWESI TENGGARA",
"GORONTALO","SULAWESI BARAT","MALUKU","MALUKU UTARA","PAPUA BARAT","PAPUA"),
persen = c(11.64,14.17,17,14.5,12.2,11.1,14.89,9.94,12.01,20.72,23.51,14.52,13.17,23.35,
14.22,15.27,18.62,12.03,11.39,10.45,13.58,17.35,19.42,18.02,14.27,13.61,15.41,
15.8,16.46,12.3,13.78,11.26,14.04,8.2)
)
# Nama provinsi dibuat huruf judul agar lebih mudah dibaca
judul <- function(x) {
x <- tolower(x)
x <- gsub("(^|[ .])([a-z])", "\\1\\U\\2", x, perl = TRUE)
x <- gsub("^Di ", "DI ", x); x <- gsub("^Dki ", "DKI ", x)
x <- gsub("Kep\\. ", "Kep. ", x)
x
}
komp$provinsi <- judul(komp$provinsi)
# Pengelompokan wilayah pulau
komp$wilayah <- with(komp, ifelse(
grepl("^Aceh|Sumatera (Utara|Barat|Selatan)|^Riau|^Jambi|Bengkulu|Lampung|Bangka|Kep. Riau", provinsi), "Sumatera",
ifelse(grepl("^DKI|Jawa|^DI Yogya|Banten", provinsi), "Jawa",
ifelse(grepl("^Bali|Nusa Tenggara", provinsi), "Bali–Nusa Tenggara",
ifelse(grepl("Kalimantan", provinsi), "Kalimantan",
ifelse(grepl("Sulawesi|Gorontalo", provinsi), "Sulawesi", "Maluku–Papua"))))))
komp$wilayah <- factor(komp$wilayah,
levels = c("Jawa","Sumatera","Kalimantan","Bali–Nusa Tenggara","Sulawesi","Maluku–Papua"))
stopifnot(nrow(komp) == 34, !anyNA(komp$wilayah))
rata2 <- mean(komp$persen)
komp$provinsi <- factor(komp$provinsi, levels = komp$provinsi[order(komp$persen)])
pal <- c("Jawa" = "#1F5A99", "Sumatera" = "#D55E00", "Kalimantan" = "#009E73",
"Bali-Nusa Tenggara" = "#CC79A7", "Sulawesi" = "#E69F00", "Maluku-Papua" = "#7A7A7A")
ggplot(komp, aes(x = persen, y = provinsi, colour = wilayah)) +
geom_segment(aes(x = 0, xend = persen, yend = provinsi),
colour = "#E3E6EA", linewidth = 0.5) +
geom_vline(xintercept = rata2, linetype = "dashed", colour = "#555555") +
geom_point(size = 3) +
geom_text(aes(x = 26.5, label = sprintf("%.1f", persen)), hjust = 1, size = 3,
colour = col_teks, show.legend = FALSE) +
annotate("text", x = rata2 + 0.3, y = 8, hjust = 0, size = 3.4, colour = "#555555",
label = sprintf("Rata-rata 34 provinsi = %.1f%%", rata2)) +
scale_colour_manual(values = pal, name = "Wilayah") +
scale_x_continuous(limits = c(0, 26.8), breaks = seq(0, 25, 5),
labels = function(x) paste0(x, "%"),
expand = expansion(mult = c(0, 0))) +
labs(title = "Persentase penduduk yang menggunakan komputer menurut Provinsi 2019",
x = "Persentase penduduk pengguna komputer", y = "Provinsi",
caption = "Sumber data: BPS, 2019. \nGaris putus-putus: rata-rata sederhana 34 provinsi (bukan angka nasional resmi).\nAngka di kolom kanan adalah nilai tiap provinsi.") +
theme(panel.grid.major.y = element_blank(),
axis.text.y = element_text(size = 9),
legend.position = "top")
Ringkasan angka pendukung:
urut <- komp[order(-komp$persen), c("provinsi", "wilayah", "persen")]
tab_top <- head(urut, 5); tab_bot <- tail(urut, 5)
kable(rbind(tab_top, tab_bot), row.names = FALSE, digits = 2,
col.names = c("Provinsi", "Wilayah", "Pengguna komputer (%)"),
caption = "Lima provinsi tertinggi (baris 1–5) dan lima provinsi terendah (baris 6–10)")
| Provinsi | Wilayah | Pengguna komputer (%) |
|---|---|---|
| DKI Jakarta | Jawa | 23.51 |
| DI Yogyakarta | Jawa | 23.35 |
| Kep. Riau | Sumatera | 20.72 |
| Kalimantan Timur | Kalimantan | 19.42 |
| Bali | Bali–Nusa Tenggara | 18.62 |
| Maluku Utara | Maluku–Papua | 11.26 |
| Sumatera Selatan | Sumatera | 11.10 |
| Kalimantan Barat | Kalimantan | 10.45 |
| Lampung | Sumatera | 9.94 |
| Papua | Maluku–Papua | 8.20 |
ringkas <- aggregate(persen ~ wilayah, komp,
function(v) c(n = length(v), median = median(v), min = min(v), maks = max(v)))
ringkas <- do.call(data.frame, ringkas)
names(ringkas) <- c("Wilayah", "Jumlah provinsi", "Median (%)", "Minimum (%)", "Maksimum (%)")
kable(ringkas[order(-ringkas$`Median (%)`), ], row.names = FALSE, digits = 2,
caption = "Ringkasan menurut wilayah pulau")
| Wilayah | Jumlah provinsi | Median (%) | Minimum (%) | Maksimum (%) |
|---|---|---|---|---|
| Kalimantan | 5 | 17.35 | 10.45 | 19.42 |
| Jawa | 6 | 14.89 | 13.17 | 23.51 |
| Sulawesi | 6 | 14.84 | 12.30 | 16.46 |
| Sumatera | 10 | 13.18 | 9.94 | 20.72 |
| Maluku–Papua | 4 | 12.52 | 8.20 | 14.04 |
| Bali–Nusa Tenggara | 3 | 12.03 | 11.39 | 18.62 |
Persentase penduduk yang menggunakan komputer sangat beragam antarprovinsi, dari 8,2% (Papua) sampai 23,5% (DKI Jakarta), dengan rata-rata sederhana sekitar 14.7%. DKI Jakarta (23,5%) dan DI Yogyakarta (23,4%) berada jauh di atas provinsi lain, disusul Kepulauan Riau (20,7%) dan Kalimantan Timur (19,4%). Sebaliknya, Papua, Lampung, dan Kalimantan Barat termasuk yang terendah (kurang dari 11%). Pengelompokan menurut wilayah memperlihatkan bahwa provinsi-provinsi di Jawa berada di dua kutub (DKI Jakarta dan DI Yogyakarta sangat tinggi, tetapi Jawa Tengah dan Jawa Timur mendekati rata-rata), sedangkan provinsi di Maluku–Papua dan Nusa Tenggara cenderung berada di bawah rata-rata. Secara umum, penggunaan komputer terkonsentrasi di provinsi dengan wilayah perkotaan yang besar dan pusat pendidikan. Penjelasan sebab-akibat tidak dapat disimpulkan dari data ini; temuan hanya bersifat deskriptif.