Demam Berdarah Dengue (DBD) masih menjadi masalah kesehatan masyarakat di Indonesia dengan jumlah kasus yang berfluktuasi setiap tahun dan berbeda antarwilayah. Kejadian DBD dipengaruhi oleh berbagai faktor seperti iklim, lingkungan, urbanisasi, serta karakteristik spasial wilayah. Oleh karena itu, analisis tidak cukup hanya berdasarkan jumlah kasus, tetapi juga perlu mempertimbangkan risiko relatif antarwilayah.
Penelitian ini menganalisis kejadian DBD di 27 kabupaten/kota Provinsi Jawa Barat selama periode 2020–2024 menggunakan pendekatan spasial-temporal. Analisis dilakukan melalui perhitungan Incidence Rate (IR) dan Standardized Incidence Ratio (SIR), serta pemetaan SIR tahunan, kategori SIR, dan perubahan SIR. Hasil penelitian diharapkan dapat mengidentifikasi wilayah dengan risiko DBD tinggi sebagai dasar penentuan prioritas surveilans, pencegahan, dan pengendalian DBD berbasis wilayah.
Data sekunder kejadian DBD pada 27 kabupaten/kota di Provinsi Jawa Barat tahun 2020–2024 dianalisis menggunakan variabel wilayah, tahun, jumlah kasus DBD, dan jumlah penduduk, dengan ukuran epidemiologi Incidence Rate (IR) dan Standardized Incidence Ratio (SIR), kemudian divisualisasikan melalui analisis spasial-temporal berupa peta SIR tahunan, peta kategori SIR, dan peta perubahan SIR untuk mengidentifikasi distribusi serta perubahan risiko DBD antarwilayah
Import Data
file_excel <- "DATA KOTOR EPIDEM.xlsx"
file_geojson <- "geojson_jawa_barat_adm2.geojson"
df_raw <- read_excel(file_excel)
gdf_raw <- st_read(file_geojson, quiet = TRUE)
gdf_raw <- st_make_valid(gdf_raw)
Pengolahan Data
df <- df_raw %>%
rename(
kasus_dbd = `DBD (Kasus)`,
penduduk_ribu = `Jumlah Penduduk (ribu)`
) %>%
mutate(penduduk = penduduk_ribu*1000)
ringkasan_jabar <- df %>%
group_by(Tahun) %>%
summarise(
total_kasus = sum(kasus_dbd, na.rm = TRUE),
total_penduduk = sum(penduduk, na.rm = TRUE),
.groups = "drop"
) %>%
mutate(
ir_jabar = total_kasus / total_penduduk * 100000
)
df <- df %>%
left_join(ringkasan_jabar, by = "Tahun") %>%
mutate(
incidence_rate = kasus_dbd / penduduk * 100000,
expected_cases = penduduk * ir_jabar / 100000,
sir = kasus_dbd / expected_cases
)
head(df)
## # A tibble: 6 × 22
## No Wilayah Tahun kasus_dbd `Kepadatan (Jiwa/KM2)` `Kemiskinan (Persen)`
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 1 KABUPATEN … 2020 1296 2002 7.69
## 2 2 KABUPATEN … 2020 561 657 7.09
## 3 3 KABUPATEN … 2020 684 645 10.4
## 4 4 KABUPATEN … 2020 2303 2050 6.91
## 5 5 KABUPATEN … 2020 651 841 9.98
## 6 6 KABUPATEN … 2020 179 731 10.3
## # ℹ 16 more variables: `Curah Hujan (mm)` <dbl>, `Kelembapan (persen)` <dbl>,
## # `Suhu C` <dbl>, Sanitasi <dbl>, `Jumlah Fasilitas Kesehatan (Unit)` <dbl>,
## # `Jumlah Tenaga Kesehatan (Orang)` <dbl>, penduduk_ribu <dbl>,
## # `Total Kasus Jabar per Tahun` <dbl>, `Total Penduduk Jabar (Ribu)` <dbl>,
## # penduduk <dbl>, total_kasus <dbl>, total_penduduk <dbl>, ir_jabar <dbl>,
## # incidence_rate <dbl>, expected_cases <dbl>, sir <dbl>
ringkasan_tahun <- df %>%
group_by(Tahun) %>%
summarise(
total_kasus = sum(kasus_dbd, na.rm = TRUE),
total_penduduk = sum(penduduk, na.rm = TRUE),
ir_jabar = (total_kasus / total_penduduk) * 100000,
rata_sir = mean(sir, na.rm = TRUE),
median_sir = median(sir, na.rm = TRUE),
min_sir = min(sir, na.rm = TRUE),
max_sir = max(sir, na.rm = TRUE),
.groups = "drop"
)
knitr::kable(
ringkasan_tahun,
caption = "Ringkasan Kejadian DBD Jawa Barat Tahun 2020–2024",
digits = 2
)
| Tahun | total_kasus | total_penduduk | ir_jabar | rata_sir | median_sir | min_sir | max_sir |
|---|---|---|---|---|---|---|---|
| 2020 | 24471 | 48274400 | 50.69 | 1.22 | 1.06 | 0.19 | 3.88 |
| 2021 | 23454 | 48782500 | 48.08 | 1.09 | 0.79 | 0.05 | 3.17 |
| 2022 | 36608 | 49404000 | 74.10 | 1.24 | 0.92 | 0.18 | 3.90 |
| 2023 | 19328 | 49860200 | 38.76 | 1.21 | 1.01 | 0.10 | 3.55 |
| 2024 | 61423 | 50345200 | 122.00 | 1.24 | 1.05 | 0.23 | 3.66 |
Total kasus dan incidence rate tertinggi terjadi pada tahun 2024. Pada tahun tersebut terdapat 61.423 kasus DBD dengan incidence rate 122,00 per 100.000 penduduk. Tahun 2023 memiliki total kasus terendah, yaitu 19.328 kasus dengan incidence rate 38,76 per 100.000 penduduk. Nilai rata-rata SIR pada seluruh tahun berada di atas 1, yang menunjukkan bahwa secara rata-rata terdapat wilayah dengan jumlah kasus lebih tinggi dari ekspektasi provinsi. Nilai maksimum SIR tertinggi terjadi pada tahun 2022, yaitu sebesar 3,90, sedangkan nilai minimum SIR terendah terjadi pada tahun 2021, yaitu sebesar 0,05.
Total Kasus DBD
ggplot(ringkasan_tahun,
aes(x = Tahun, y = total_kasus, group = 1)) +
geom_line(color = "#1f77b4", linewidth = 1) +
geom_point(color = "#1f77b4", size = 3) +
labs(
title = "Tren Total Kasus DBD Jawa Barat 2020-2024",
x = "Tahun",
y = "Jumlah Kasus DBD"
) +
theme_minimal()
Tren total kasus DBD Jawa Barat tahun 2020-2024
Incidence Rate DBD
ggplot(ringkasan_tahun,
aes(x = Tahun, y = ir_jabar, group = 1)) +
geom_line(color = "#1f77b4", linewidth = 1) +
geom_point(color = "#1f77b4", size = 3) +
labs(
title = "Tren Incidence Rate DBD Jawa Barat 2020-2024",
x = "Tahun",
y = "Incidence Rate per 100.000 penduduk"
) +
theme_minimal()
Tren incidence rate DBD Jawa Barat tahun 2020-2024
Secara umum, tren kasus DBD berfluktuasi dari tahun ke tahun. Kasus menurun sedikit dari 2020 ke 2021, meningkat pada 2022, menurun kembali pada 2023, kemudian meningkat tajam pada 2024. Pola incidence rate mengikuti pola total kasus karena perhitungan incidence rate menggunakan jumlah kasus sebagai pembilang dan jumlah penduduk sebagai penyebut.
| Wilayah | Kasus | IR | Expected | SIR |
|---|---|---|---|---|
| KOTA SUKABUMI | 1631 | 445.99 | 446.17 | 3.66 |
| KOTA BANDUNG | 7680 | 303.77 | 3084.50 | 2.49 |
| KOTA BOGOR | 3117 | 289.04 | 1315.69 | 2.37 |
| KOTA TASIKMALAYA | 1777 | 236.71 | 915.88 | 1.94 |
| KOTA DEPOK | 5040 | 232.95 | 2639.67 | 1.91 |
| KABUPATEN PANGANDARAN | 890 | 205.02 | 529.62 | 1.68 |
| KABUPATEN BANDUNG BARAT | 3754 | 199.24 | 2298.79 | 1.63 |
| KABUPATEN SUMEDANG | 2303 | 194.00 | 1448.31 | 1.59 |
| KOTA BANJAR | 400 | 190.66 | 255.96 | 1.56 |
| KABUPATEN KUNINGAN | 2165 | 178.35 | 1481.00 | 1.46 |
Pada tahun 2024, SIR tertinggi ditemukan di Kota Sukabumi (SIR 3,66), Kota Bandung (SIR 2,49), dan Kota Bogor (SIR 2,37). Nilai SIR tersebut menunjukkan bahwa jumlah kasus DBD teramati jauh lebih tinggi dibandingkan jumlah kasus yang diharapkan berdasarkan incidence rate Jawa Barat pada tahun yang sama. Wilayah lain dengan SIR di atas 1 antara lain Kota Tasikmalaya, Kota Depok, Kabupaten Pangandaran, Kabupaten Bandung Barat, Kabupaten Sumedang, Kota Banjar, dan Kabupaten Kuningan.
Analisis lanjutan dilakukan dengan membuat peta SIR DBD per tahun 2020 sampai 2024, peta kategori SIR per tahun, dan peta perubahan SIR 2020 ke 2024. Peta SIR digunakan untuk melihat perbedaan intensitas risiko relatif antarwilayah pada tiap tahun, sedangkan peta kategori SIR mempermudah interpretasi wilayah dengan risiko lebih rendah, tinggi, dan sangat tinggi.
buat_key_excel <- function(x){
x <- toupper(trimws(as.character(x)))
x <- gsub("KABUPATEN ","",x)
x
}
buat_key_geo <- function(x){
toupper(trimws(as.character(x)))
}
df$wilayah_key <- buat_key_excel(df$Wilayah)
gdf_raw$wilayah_key <- buat_key_geo(gdf_raw$shapeName)
geo_data <- gdf_raw %>%
left_join(df, by="wilayah_key")
Peta SIR DBD Tahun 2020 hingga 2024
tahun_list <- sort(unique(geo_data$Tahun))
for(th in tahun_list){
data_tahun <- geo_data %>% filter(Tahun == th)
p <- ggplot(data_tahun)+
geom_sf(aes(fill=sir),color="grey30",linewidth=0.2)+
scale_fill_gradient(low="white",high="red",na.value="grey90")+
labs(title=paste("Peta SIR DBD Jawa Barat Tahun",th),
fill="SIR")+
theme_void()
print(p)
}
Berdasarkan peta SIR tahun 2020–2024, risiko relatif DBD di Jawa Barat menunjukkan variasi spasial dan temporal. Wilayah perkotaan cenderung memiliki nilai SIR lebih tinggi, dan pada tahun 2024 terlihat peningkatan jumlah wilayah dengan SIR tinggi seiring meningkatnya kasus DBD di tingkat provinsi.
Peta Kategori Risiko SIR Tahun 2020 hingga 2024
geo_data <- geo_data %>%
mutate(
kategori_sir = case_when(
sir < 1 ~ "Lebih rendah dari ekspektasi",
sir >= 1 & sir < 2 ~ "Lebih tinggi dari ekspektasi",
sir >= 2 ~ "Sangat tinggi",
TRUE ~ NA_character_
)
)
for(th in tahun_list){
data_tahun <- geo_data %>% filter(Tahun==th)
p <- ggplot(data_tahun)+
geom_sf(aes(fill=kategori_sir),
color="grey30",
linewidth=0.2)+
scale_fill_manual(
values=c(
"Lebih rendah dari ekspektasi"="#fee5d9",
"Lebih tinggi dari ekspektasi"="#fcae91",
"Sangat tinggi"="#cb181d"
)
)+
labs(
title=paste("Peta Kategori Risiko SIR DBD Tahun",th),
fill="Kategori SIR"
)+
theme_void()
print(p)
}
Peta kategori SIR menunjukkan bahwa risiko relatif DBD di Jawa Barat tidak merata antarwilayah. Sebagian besar wilayah berada pada kategori rendah hingga tinggi, sedangkan beberapa wilayah perkotaan termasuk kategori sangat tinggi (SIR ≥ 2). Pada tahun 2024 terlihat lebih banyak wilayah dengan kategori tinggi dan sangat tinggi dibandingkan tahun sebelumnya.
Peta Perubahan SIR 2020 hingga 2024
sir_2020 <- df %>% filter(Tahun==2020) %>% select(wilayah_key,sir_2020=sir)
sir_2024 <- df %>% filter(Tahun==2024) %>% select(wilayah_key,sir_2024=sir)
perubahan_sir <- gdf_raw %>%
left_join(sir_2020, by="wilayah_key") %>%
left_join(sir_2024, by="wilayah_key") %>%
mutate(perubahan_sir=sir_2024-sir_2020)
ggplot(perubahan_sir)+
geom_sf(aes(fill=perubahan_sir),
color="grey30",
linewidth=0.2)+
scale_fill_gradient2(low="blue",mid="white",high="red",midpoint=0)+
labs(title="Perubahan SIR DBD Jawa Barat Tahun 2020 ke 2024",
fill="Δ SIR")+
theme_void()
Peta perubahan SIR tahun 2020–2024 menunjukkan adanya peningkatan dan penurunan risiko relatif DBD yang berbeda antarwilayah. Wilayah dengan perubahan SIR positif mengalami peningkatan risiko DBD, sedangkan wilayah dengan perubahan negatif mengalami penurunan risiko. Hasil ini menunjukkan bahwa risiko DBD bersifat dinamis dan berubah dari waktu ke waktu.
Hasil analisis menunjukkan bahwa tahun 2024 merupakan periode dengan beban DBD tertinggi di Jawa Barat, ditandai oleh peningkatan kasus dan incidence rate yang mencapai 122,00 per 100.000 penduduk. Berdasarkan nilai SIR, Kota Sukabumi, Kota Bandung, dan Kota Bogor menjadi wilayah dengan risiko relatif tertinggi sehingga perlu menjadi prioritas pengendalian DBD. Pola SIR yang tinggi pada wilayah perkotaan mengindikasikan adanya pengaruh faktor lingkungan, kepadatan penduduk, dan mobilitas. Oleh karena itu, penguatan surveilans, edukasi 3M Plus, pemantauan jentik, dan respons cepat terhadap peningkatan kasus perlu difokuskan pada wilayah berisiko tinggi. Namun, hasil analisis ini masih memiliki keterbatasan karena menggunakan data agregat kabupaten/kota dan belum memasukkan analisis autokorelasi spasial seperti Moran’s I atau LISA.
Analisis ini menunjukkan bahwa kejadian DBD di Provinsi Jawa Barat tahun 2020-2024 mengalami fluktuasi dan mencapai puncak pada tahun 2024. Pada tahun 2024 terdapat 61.423 kasus DBD dengan incidence rate 122,00 per 100.000 penduduk. Berdasarkan SIR tahun 2024, wilayah dengan risiko relatif tertinggi adalah Kota Sukabumi, Kota Bandung, dan Kota Bogor. Hasil analisis spasial-temporal menunjukkan bahwa risiko DBD tidak tersebar merata antarwilayah dan mengalami perubahan dari waktu ke waktu.
Rekomendasi yang dapat diberikan adalah penguatan surveilans dan intervensi pencegahan DBD pada wilayah dengan SIR tinggi, terutama wilayah dengan kategori prioritas sangat tinggi. Program seperti pemberantasan sarang nyamuk, edukasi 3M Plus, pemantauan jentik, serta respons cepat terhadap peningkatan kasus perlu diarahkan secara lebih proporsional berdasarkan hasil pemetaan risiko.