Analisis Kemiskinan Kepulauan Sunda Kecil

data kelompok

  • Muhamad Hambali (3338240013)
  • Gaisa Ilahi (3338240036)
  • Umi Makhmudah (3338240037)
  • Alya Nur Azizah (3338240040)

Pendahuluan

Analisis ini dibuat untuk melihat gambaran besar kondisi ekonomi dan kesejahteraan masyarakat di wilayah Sunda Kecil, yaitu Bali, NTB, dan NTT. Sebagai wilayah kepulauan, Sunda Kecil punya tantangan ekonomi yang cukup unik dan bervariasi. Ada daerah yang ekonominya sangat terbantu oleh pariwisata seperti Bali, tapi ada juga wilayah di NTT yang masih berjuang dengan angka kemiskinan yang tinggi. Visualisasi data ini nantinya akan memperlihatkan bagaimana angka kemiskinan di tingkat kabupaten/kota berhubungan dengan faktor pendukung lainnya seperti sektor tenaga kerja, pendidikan, dan kesehatan.

Sumber Data

Data dalam analisis ini diambil dari Kaggle dengan judul dataset: “Klasifikasi Tingkat Kemiskinan di Indonesia”. Data yang diambil hanya difokuskan pada wilayah kabupaten dan kota yang berada di Provinsi Bali, Nusa Tenggara Barat, dan Nusa Tenggara Timur agar hasilnya lebih relevan dengan topik bahasan. Untuk akses data klik disini.

Pemilihan data ini didasarkan pada adanya perbedaan karakteristik pembangunan di wilayah Kepulauan Sunda Kecil. Bali umumnya memiliki tingkat pembangunan yang relatif lebih tinggi, sedangkan Nusa Tenggara Barat dan Nusa Tenggara Timur masih menghadapi berbagai tantangan dalam pembangunan sosial ekonomi. Dengan demikian, analisis terhadap data tersebut diharapkan dapat memberikan gambaran yang lebih jelas mengenai beberapa faktor yang memengaruhi tingkat kemiskinan di wilayah tersebut.

Deskripsi Data

Dataset ini memuat berbagai variabel ekonomi yang saling berkaitan satu sama lain. Berikut adalah rincian variabel yang digunakan:

  • Identitas Wilayah: Berisi nama Provinsi dan Kabupaten/Kota di wilayah Sunda Kecil.

  • Output & Kemiskinan: Menggunakan data PDRB atas dasar harga konstan, Pengeluaran per Kapita yang disesuaikan, serta Persentase Penduduk Miskin (P0).

  • Tenaga Kerja: Mencakup data Tingkat Pengangguran Terbuka (TPT) dan Tingkat Partisipasi Angkatan Kerja (TPAK).

  • Modal Manusia: Indikator kualitas SDM yang dilihat dari Indeks Pembangunan Manusia (IPM), Rata-rata Lama Sekolah, dan Umur Harapan Hidup.

  • Standar Hidup: Data mengenai akses rumah tangga terhadap sanitasi layak dan air minum layak.

Input Data

Pada bagian ini, dilakukan proses import data dari file Excel yang telah difilter khusus untuk wilayah Kepulauan Sunda Kecil. Data disimpan dalam objek data_analisis.

# Membaca file excel
data_analisis <- read_excel("Klasifikasi_Kemiskinan_di_Pulau_Sunda_Kecil.xlsx")

colnames(data_analisis) <- c("Provinsi", "KabKota", "Kemiskinan", "Sekolah", 
                             "Pengeluaran", "IPM", "HarapanHidup", "Sanitasi", 
                             "AirMinum", "Pengangguran", "TPAK", "PDRB", "Klasifikasi")

Berikut adalah tabel interaktif untuk mengeksplorasi seluruh variabel di 41 Kabupaten/Kota wilayah Bali, NTT, dan NTB.

datatable(data_analisis,
          caption= "Tabel Data klasifikasi kemiskinan di Pulau Sunda Kecil",
          options = list(pageLength=10, scrollX = TRUE))

Visualisasi Numerik

Histogram

Histogram digunakan untuk melihat sebaran frekuensi dari persentase penduduk miskin (\(P_0\)) di 41 Kabupaten/Kota wilayah Sunda Kecil.

data_analisis$Kemiskinan <- as.numeric(data_analisis$Kemiskinan)

ggplot(data_analisis, aes(x = Kemiskinan, fill = Provinsi)) +
  geom_histogram(
    bins = 10, 
    color = "black",      
    linewidth = 0.3, 
    alpha = 0.5,          
    position = "identity" 
  ) +
  
  scale_fill_manual(values = c("BALI" = "#4e79a7", 
                               "NUSA TENGGARA BARAT" = "#f28e2b", 
                               "NUSA TENGGARA TIMUR" = "#e15759")) +
  
  theme_minimal() +
  labs(
    title = "Perbandingan Distribusi Kemiskinan",
    subtitle = "Analisis Overlaid: Bali, NTB, dan NTT",
    x = "Persentase Penduduk Miskin (%)",
    y = "Frekuensi (Jumlah Kabupaten/Kota)",
    fill = "Provinsi:"
  ) +
  theme(
    plot.title = element_text(face = "bold", size = 14),
    legend.position = "bottom",
    panel.grid.minor = element_blank()
  )

Berdasarkan histogram tersebut, terlihat jelas adanya tingkatan kesejahteraan di Kepulauan Nusa Tenggara dan Bali. Karakteristik kemiskinan di Bali tampak sangat seragam dan terkumpul pada level rendah, sebagaimana terlihat dari lonjakan frekuensi pada rentang angka di bawah 10%. Berbeda halnya dengan NTB yang memiliki distribusi di angka menengah, atau NTT yang justru memperlihatkan rentang kemiskinan yang sangat bervariasi dan mencolok.

Bentuk grafik yang melebar pada provinsi NTT menggambarkan besarnya perbedaan antar daerah, di mana sebagian kecil kabupaten/kota sudah mulai menyamai gambaran ekonomi NTB (terlihat dari irisan grafik), namun sebagian besar lainnya masih menghadapi angka kemiskinan di atas 30%. Secara garis besar, ketiadaan irisan antara Bali dan NTT menjadi bukti kuat adanya jarak ekonomi yang signifikan, memosisikan Bali sebagai wilayah dengan ketahanan ekonomi terbaik dan NTT sebagai wilayah dengan persoalan kemiskinan yang paling beragam sekaligus berat.

Density Plot

Visualisasi ini digunakan untuk membandingkan sebaran Indeks Pembangunan Manusia (IPM) pada ketiga provinsi di wilayah Sunda Kecil. Melalui kurva densitas, kita dapat mengamati pemusatan data IPM serta melihat sejauh mana ketimpangan atau kemerataan kualitas pembangunan manusia di masing-masing wilayah tersebut.

data_analisis$IPM <- as.numeric(as.character(data_analisis$IPM))

ggplot(data_analisis, aes(x = IPM, y = Provinsi, fill = ..x..)) +
  geom_density_ridges_gradient(
    scale = 2.5, 
    rel_min_height = 0.01, 
    linewidth = 0.3, 
    color = "white"
  ) +
  
  scale_fill_viridis_c(option = "C", name = "Skor IPM") +
  
  theme_minimal() +
  labs(
    title = "Distribusi Pencapaian IPM per Wilayah",
    subtitle = "Perbandingan kepadatan skor IPM di Bali, NTB, dan NTT",
    x = "Indeks Pembangunan Manusia (IPM)",
    y = ""
  ) +
theme(
    legend.position = "right",
    panel.grid.minor = element_blank(),
    plot.title = element_text(face = "bold", size = 14),
    axis.text.y = element_text(face = "bold") #
  )
## Warning: The dot-dot notation (`..x..`) was deprecated in ggplot2 3.4.0.
## ℹ Please use `after_stat(x)` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## Picking joint bandwidth of 1.85

Density plot ini memperlihatkan perbedaan capaian Indeks Pembangunan Manusia (IPM) yang cukup signifikan di wilayah Sunda Kecil. Bali menempati posisi paling kanan dengan gradasi warna cerah, yang mengindikasikan dominasi skor IPM tertinggi dibandingkan wilayah lainnya, di mana sebagian besar kabupaten/kotanya telah mendekati angka 80 hingga 90. Sebaliknya, Nusa Tenggara Barat (NTB) berada pada posisi menengah dengan puncak kepadatan di kisaran skor 70, menunjukkan progres pembangunan yang sedang berkembang. Sementara itu, Nusa Tenggara Timur (NTT) terkonsentrasi di sisi kiri grafik dengan dominasi warna ungu gelap, mencerminkan bahwa mayoritas wilayah di sana masih berada pada level pembangunan manusia yang lebih rendah dibandingkan dua provinsi tetangganya.

Perbedaan bentuk kurva pada plot kepadatan ini juga mengungkapkan variasi kemajuan pembangunan di tiap provinsi. Kurva Bali yang melebar ke arah kanan menunjukkan distribusi prestasi yang lebih merata di level tinggi, sedangkan kurva NTT konsentrasi data yang tinggi pada skor rendah menandakan bahwa capaian IPM di wilayah tersebut masih memerlukan dorongan besar untuk keluar dari zona bawah. Adanya sedikit irisan antara area kepadatan NTB dan Bali memberikan gambaran bahwa beberapa wilayah di NTB mulai menunjukkan performa yang setara dengan Bali. Secara keseluruhan, grafik ini menegaskan adanya ketimpangan kesejahteraan yang jelas, dengan Bali sebagai pemimpin kualitas sumber daya manusia, diikuti oleh NTB di posisi tengah, dan NTT yang masih menghadapi tantangan pembangunan paling berat.

Violin Plot

Violin plot berikut memberikan gambaran komprehensif mengenai capaian pendidikan di Bali, NTB, dan NTT. Dengan memadukan bentuk distribusi frekuensi dan statistik deskriptif dari boxplot, grafik ini memudahkan kita dalam mengidentifikasi variasi lama sekolah sekaligus melihat perbandingan nilai median pendidikan antar provinsi

data_analisis$Sekolah <- as.numeric(as.character(data_analisis$Sekolah))

ggplot(data_analisis, aes(x = Provinsi, y = Sekolah, fill = Provinsi)) +
  
  geom_violin(trim = FALSE, alpha = 0.6, color = "black", linewidth = 0.4) +
  
  # Menambahkan boxplot 
  geom_boxplot(width = 0.1, fill = "white", color = "black", outlier.shape = 16) +
  
  # Pilihan warna  untuk tiap provinsi
  scale_fill_manual(values = c("#4e79a7", "#59a14f", "#edc948")) +
  
  theme_minimal() +
  labs(
    title = "Distribusi Rata-Rata Lama Sekolah per Provinsi",
    subtitle = "Perbandingan struktur pendidikan menggunakan Violin Plot",
    x = "Wilayah Provinsi",
    y = "Rata-Rata Lama Sekolah (Tahun)"
  ) +
  theme(
    legend.position = "none",
    plot.title = element_text(face = "bold", size = 14),
    axis.text.x = element_text(face = "bold"),
    panel.grid.minor = element_blank()
  )

Visualisasi ini mengungkapkan perbedaan capaian durasi pendidikan yang nyata di wilayah Sunda Kecil melalui Rata-Rata Lama Sekolah. Di Bali dan Nusa Tenggara Barat (NTB), sebaran data menunjukkan keragaman tingkat pendidikan yang cukup luas, namun tetap memiliki pemusatan data yang kuat pada jenjang pendidikan menengah. Capaian pendidikan di Bali cenderung lebih unggul karena mampu menjangkau angka 12 tahun atau setara lulusan SMA di beberapa wilayahnya. Meskipun NTB memiliki pola sebaran yang hampir serupa dengan Bali, posisi rata-ratanya masih berada sedikit di bawah, mencerminkan adanya kemiripan dalam akses pendidikan namun dengan tingkat capaian yang sedikit berbeda.

Sebaliknya, kondisi di Nusa Tenggara Timur (NTT) memperlihatkan kepadatan data yang besar pada durasi sekolah yang lebih pendek, yakni di kisaran 7 hingga 8 tahun atau setara lulusan SMP. Meskipun terdapat satu titik pencilan (outlier) di bagian atas yang menunjukkan adanya wilayah dengan capaian pendidikan yang melompat tinggi, secara keseluruhan grafik NTT menunjukkan adanya tantangan besar dalam memeratakan akses pendidikan tinggi. Jarak yang lebar antara mayoritas wilayah di NTT dengan capaian di Bali dan NTB mempertegas adanya kesenjangan kualitas sumber daya manusia yang perlu mendapat perhatian khusus di tingkat regional.

Boxplot

Pengangguran merupakan salah satu faktor yang cukup krusial dari tingkat kemiskinan di suatu daerah. Dari data klasifikasi kemiskinan, bisa dikelompokkan 3 provinsi yang termasuk ke dalam Kepulauan Sunda Kecil, diantaranya ada Bali, Nusa Tenggara Barat, dan Nusa Tenggara Timur. Berikut ini visualisasi perbandingan Tingkat Pengangguran Terbuka yang terdapat di 3 Provinsi tersebut.

ggplot(data = data_analisis, aes(x = Provinsi, y = Pengangguran, fill = Provinsi)) + 
  geom_boxplot() +
  labs(
    title = "Perbandingan Tingkat Pengangguran di Provinsi Kepulauan Sunda Kecil",
    x = "Provinsi",
    y = "Tingkat Pengangguran Terbuka"
  ) +
  theme_minimal()

Berdasarkan boxplot perbandingan tingkat pengangguran terbuka di Provinsi Bali, Nusa Tenggara Barat (NTB), dan Nusa Tenggara Timur (NTT), terlihat adanya perbedaan pola distribusi pada masing-masing provinsi. Secara keseluruhan, boxplot menunjukkan bahwa Bali memiliki tingkat pengangguran yang relatif lebih tinggi dan lebih bervariasi dibandingkan dua provinsi lainnya. NTB menunjukkan tingkat pengangguran yang lebih rendah dan stabil, sedangkan NTT memiliki tingkat pengangguran menengah dengan adanya satu lonjakan ekstrem pada periode tertentu. Temuan ini menggambarkan adanya perbedaan kondisi ketenagakerjaan di masing-masing provinsi di wilayah Kepulauan Sunda Kecil.

QQ-Plot

Sebelum melakukan analisis regresi, data berdistribusi normal merupakan salah satu asumsi yang harus dipenuhi. Untuk melihat apakah data yang diuji berdistribusi normal atau tidak, bisa menggunakan visualisasi QQ-Plot. Data dikatakan berdistribusi normal apabila sebarannya berada di sekitar garis lurus. Berikut ini akan diuji apakah Indeks Pembangunan Manusia (IPM) yang merupakan salah satu faktor dari tingkat kemiskinan suatu daerah berdistribusi normal atau tidak.

ggplot(data = data_analisis, aes(sample = IPM)) +
  stat_qq(col="blue", cex=0.9) +
  stat_qq_line(col="pink", lwd=1)+
  labs(title = "QQ Plot Indeks Pembangunan Manusia (IPM)")

Berdasarkan QQ Plot Indeks Pembangunan Manusia (IPM) pada tiga provinsi di wilayah Sunda Kecil, yaitu Bali, Nusa Tenggara Barat (NTB), dan Nusa Tenggara Timur (NTT), terlihat bahwa sebagian besar titik data berada di sekitar garis diagonal. Hal ini menunjukkan bahwa distribusi data IPM cenderung mengikuti distribusi normal. Meskipun demikian, terdapat beberapa titik pada bagian awal dan akhir yang sedikit menyimpang dari garis tersebut. Penyimpangan ini mengindikasikan adanya sedikit perbedaan pada nilai IPM yang sangat rendah maupun sangat tinggi, namun secara keseluruhan pola titik yang relatif mengikuti garis menunjukkan bahwa data IPM dari ketiga provinsi tersebut masih dapat dianggap mendekati berdistribusi normal.

Scatter Plot

Pendidikan merupakan salah satu faktor yang berperan penting dalam memengaruhi tingkat kemiskinan di suatu wilayah. Secara umum, tingkat pendidikan yang lebih tinggi dapat meningkatkan kualitas sumber daya manusia, memperluas kesempatan kerja, serta meningkatkan pendapatan masyarakat. Sebaliknya, rendahnya tingkat pendidikan sering kali berkaitan dengan keterbatasan keterampilan dan akses terhadap pekerjaan yang layak, sehingga dapat meningkatkan risiko terjadinya kemiskinan. Hubungan antara pendidikan dan tingkat kemiskinan ini dapat dianalisis secara statistik untuk melihat pola keterkaitannya. Salah satu cara yang dapat digunakan untuk menggambarkan hubungan tersebut adalah melalui visualisasi data menggunakan scatter plot, yang dapat menunjukkan bagaimana pola hubungan antara variabel pendidikan dan kemiskinan pada data yang diamati.

ggplot(data = data_analisis, mapping = aes(x = Sekolah, y = Kemiskinan, color = Provinsi)) + 
  geom_point() +
  labs(x="Tingkat Pendidikan", y="Tingkat Kemiskinan")

Berdasarkan scatter plot yang menampilkan hubungan antara tingkat pendidikan dan tingkat kemiskinan pada tiga provinsi di wilayah Kepulauan Sunda Kecil (Bali, Nusa Tenggara Barat, dan Nusa Tenggara Timur), terlihat adanya kecenderungan hubungan negatif antara kedua variabel tersebut. Hal ini berarti bahwa semakin tinggi tingkat pendidikan, maka tingkat kemiskinan cenderung semakin rendah. Pola ini terlihat dari posisi titik-titik data yang secara umum menurun dari kiri ke kanan pada grafik.

Secara keseluruhan, scatter plot ini menunjukkan bahwa daerah dengan tingkat pendidikan yang lebih tinggi cenderung memiliki tingkat kemiskinan yang lebih rendah. Hal ini memperkuat asumsi bahwa peningkatan akses dan kualitas pendidikan dapat menjadi salah satu faktor penting dalam upaya menurunkan tingkat kemiskinan di suatu wilayah.

Line Chart

Karena line chart cocok untuk data time series, maka kami menggunakan data dari BPS yaitu data persentase masyarakat miskin di Provinsi Bali dengan rentang waktu tahun 1999 sampai dengan 2010. Berikut ini syntax untuk menginputkan datanya.

data_bali <- read_excel("Klasifikasi_Kemiskinan_di_Pulau_Sunda_Kecil.xlsx", sheet = "Sheet2")
DT::datatable(data_bali)

Line Dasar

Secara umum, kondisi kemiskinan di Provinsi Bali dapat dilihat melalui data Urban Rural, yaitu data yang merupakan gabungan dari wilayah perkotaan dan pedesaan. Data ini memberikan gambaran yang lebih menyeluruh mengenai tingkat kemiskinan karena mencakup kondisi masyarakat di kedua wilayah tersebut. Dengan melihat data gabungan ini, kita dapat memahami bagaimana perkembangan tingkat kemiskinan di Bali secara keseluruhan dari waktu ke waktu. Oleh karena itu, visualisasi berikut disajikan untuk memperlihatkan tren tingkat kemiskinan di Provinsi Bali berdasarkan data Urban Rural selama periode pengamatan.

ggplot(data = data_bali, aes(x = Year, y = Urban_Rural)) +
  geom_line() +
  labs(x="Tahun", y="Persentase Penduduk Miskin", title = "Tingkat Kemiskinan di Provinsi Bali") 

Grafik tersebut menunjukkan perkembangan tingkat kemiskinan total di Provinsi Bali pada periode 1999–2010. Secara umum terlihat bahwa tingkat kemiskinan mengalami tren menurun, meskipun terdapat beberapa fluktuasi pada beberapa tahun. Pada tahun 1999, persentase penduduk miskin berada pada angka yang cukup tinggi, yaitu sekitar 8,5%. Kemudian pada tahun 2000 terjadi penurunan yang cukup tajam hingga sekitar 5,7%, yang menunjukkan adanya perbaikan kondisi kesejahteraan masyarakat. Namun pada tahun 2001, tingkat kemiskinan kembali meningkat hingga mendekati 7,8%, menandakan adanya perubahan kondisi ekonomi yang memengaruhi jumlah penduduk miskin.

Memasuki tahun 2008 hingga 2010, terlihat adanya penurunan yang cukup signifikan dan konsisten, dari sekitar 6,2% hingga mencapai sekitar 4,9% pada tahun 2010, yang merupakan angka terendah selama periode pengamatan. Secara keseluruhan, grafik ini menggambarkan bahwa tingkat kemiskinan di Provinsi Bali selama periode 1999–2010 cenderung menurun, yang menunjukkan adanya perbaikan kondisi ekonomi dan kesejahteraan masyarakat, meskipun sempat mengalami fluktuasi pada beberapa tahun di awal dan pertengahan periode.

Area Plot

Wilayah perkotaan masih menjadi hal yang harus diperhatikan dalam kondisi sosial dan ekonomi masyarakat, karena sebagian besar aktivitas ekonomi seperti perdagangan, jasa, dan pariwisata berkembang di wilayah ini sehingga sangat memengaruhi kesejahteraan penduduk. Oleh karena itu, tingkat kemiskinan di wilayah perkotaan Provinsi Bali perlu dianalisis secara khusus untuk melihat dinamika kesejahteraan masyarakat yang tinggal di pusat kegiatan ekonomi tersebut. Untuk memperlihatkan perubahan tingkat kemiskinan tersebut secara lebih jelas dari waktu ke waktu, data ini divisualisasikan menggunakan area plot, yang dapat menampilkan tren perkembangan sekaligus menunjukkan besarnya nilai persentase kemiskinan pada setiap tahun melalui area yang diarsir di bawah garis grafik.

ggplot(data = data_bali, aes(x = Year, y = Urban)) +
  geom_line(lwd=1.0, col="blue") +
  geom_area(fill="skyblue", alpha=0.6) +
  labs(x="Tahun", y="Persentase Penduduk Miskin", 
       title = "Area Plot Tingkat Kemiskinan Wilayah Perkotaan di Bali")

Grafik tersebut menunjukkan tren tingkat kemiskinan di wilayah perkotaan Provinsi Bali selama periode 1999–2010. Pada awal periode, yaitu tahun 1999, persentase penduduk miskin berada pada tingkat yang cukup tinggi, sekitar 9%, kemudian mengalami penurunan tajam pada tahun 2000 dan 2001 hingga mencapai sekitar 4–5%. Penurunan ini menunjukkan adanya perbaikan kondisi ekonomi masyarakat perkotaan pada awal periode pengamatan. Namun setelah itu, tingkat kemiskinan kembali mengalami peningkatan secara bertahap pada tahun 2002 hingga 2003, sebelum kembali menurun pada tahun 2004.

Pada periode selanjutnya, yaitu 2005 hingga 2008, tingkat kemiskinan di wilayah perkotaan Bali cenderung berfluktuasi namun relatif stabil di kisaran 5–6%. Setelah tahun 2008, terlihat adanya penurunan yang cukup konsisten hingga tahun 2010, di mana persentase penduduk miskin mencapai sekitar 4%, yang merupakan salah satu nilai terendah selama periode pengamatan. Secara keseluruhan, grafik ini menunjukkan bahwa meskipun sempat mengalami beberapa fluktuasi, tren kemiskinan di wilayah perkotaan Bali selama 1999–2010 cenderung menurun, yang mengindikasikan adanya peningkatan kesejahteraan masyarakat perkotaan dari waktu ke waktu.

Multiple Chart

Selain digunakan untuk melihat perkembangan suatu variabel dari waktu ke waktu, line chart juga dapat dimanfaatkan untuk membandingkan beberapa variabel sekaligus dalam satu grafik. Dengan menampilkan lebih dari satu garis pada grafik yang sama, perbedaan pola, tren, serta perubahan nilai antar variabel dapat diamati dengan lebih mudah. Pada analisis ini, line chart digunakan untuk membandingkan tingkat kemiskinan di wilayah perkotaan (urban) dan pedesaan (rural) di Provinsi Bali pada periode 1999–2010. Melalui visualisasi ini, dapat terlihat bagaimana perbedaan dinamika kemiskinan antara kedua wilayah tersebut dari tahun ke tahun, sehingga memberikan gambaran yang lebih jelas mengenai kondisi sosial ekonomi masyarakat di Bali.

ggplot(data = data_bali, aes(x=Year)) +
  geom_line(aes(y=Urban), lwd=1.0, col="purple") +
  geom_line(aes(y=Rural), lwd=1.0, col="magenta") +
  coord_cartesian(xlim = c(1999, 2012), ylim = c(0, 12)) + 
  geom_text(x=max(data_bali$Year),y=tail(data_bali$Urban,1),
            label="Perkotaan", size = 4,
            color="purple", hjust=-0.1) +
    geom_text(x=max(data_bali$Year),y=tail(data_bali$Rural,1),
            label="Pedesaan", size = 4,
            color="magenta", hjust=-0.1, show.legend = TRUE) +
  labs(x="Tahun", y="Tingkat Kemiskinan", title = "Multiple Line Chart Tingkat Kemiskinan di Bali") 

Grafik multiple line chart tersebut menunjukkan perbandingan tingkat kemiskinan antara wilayah perkotaan dan pedesaan di Provinsi Bali selama periode 1999–2010. Secara umum terlihat bahwa tingkat kemiskinan di wilayah pedesaan selalu lebih tinggi dibandingkan wilayah perkotaan pada hampir seluruh periode pengamatan. Pada awal periode, sekitar tahun 1999, tingkat kemiskinan di perkotaan berada di kisaran 9%, sedangkan di pedesaan sekitar 8%. Namun pada tahun 2000 kedua wilayah mengalami penurunan yang cukup signifikan, sebelum pada tahun 2001 tingkat kemiskinan di pedesaan melonjak cukup tajam hingga di atas 11%, sementara di wilayah perkotaan justru berada pada tingkat yang lebih rendah, sekitar 4–5%.

Pada periode selanjutnya, yaitu sekitar 2002 hingga 2007, tingkat kemiskinan di kedua wilayah cenderung berfluktuasi namun relatif stabil. Wilayah pedesaan berada pada kisaran 8–9%, sedangkan wilayah perkotaan berada di kisaran 5–6%. Memasuki akhir periode, yaitu 2008 hingga 2010, kedua wilayah menunjukkan tren penurunan tingkat kemiskinan, meskipun kesenjangan antara keduanya masih terlihat, di mana tingkat kemiskinan pedesaan tetap lebih tinggi dibandingkan perkotaan. Hal ini menunjukkan bahwa masyarakat di wilayah pedesaan masih menghadapi tantangan ekonomi yang lebih besar, sehingga diperlukan perhatian dan kebijakan yang lebih fokus untuk mengurangi kesenjangan kesejahteraan antara wilayah perkotaan dan pedesaan di Provinsi Bali.

Visualisasi Kategorik

data_analisis$Klasifikasi <- factor(
  data_analisis$Klasifikasi,
  levels = c(0,1),
  labels = c("Stabil", "Rentan")
)

data_analisis$Provinsi <- as.factor(data_analisis$Provinsi)

Bar Chart

Bar chart ini digunakan untuk melihat sebaran frekuensi dari klasifikasi kemiskinan di 41 kabupaten/kota wilayah Sunda Kecil. Visualisasi ini memudahkan kita dalam mengamati jumlah daerah yang masuk ke dalam klasifikasi 0 (stabil) maupun klasifikasi 1 (rentan) secara keseluruhan.

ggplot(data = data_analisis, aes(x = Klasifikasi, fill = Klasifikasi)) +
  geom_bar(color = "black", alpha = 0.9) +
  
  scale_fill_manual(values = c(
    "Stabil" = "#2c3e50",
    "Rentan" = "#d5d8dc"
  )) +
  
  theme_bw() +
  
  labs(
    title = "Distribusi Klasifikasi Kemiskinan di Sunda Kecil",
    subtitle = "Gambaran umum jumlah wilayah dengan status ekonomi stabil dan rentan",
    x = "Status Ekonomi Wilayah",
    y = "Jumlah Kabupaten/Kota"
  ) +
  
  theme(
    legend.position = "none",
    plot.title = element_text(face = "bold"),
    axis.title = element_text(face = "bold")
  )

Berdasarkan visualisasi di atas, terlihat adanya dominasi yang cukup jelas pada kelompok Klasifikasi Stabil. Hal ini menunjukkan bahwa secara agregat mayoritas kabupaten/kota di gugusan Kepulauan Sunda Kecil berada pada kategori wilayah dengan kondisi ekonomi yang relatif lebih stabil. Namun demikian, keberadaan wilayah dengan Klasifikasi Rentan yang mencakup sekitar sepertiga dari total wilayah tetap menjadi catatan penting dalam melihat dinamika kemiskinan regional.

Secara makro, perbedaan tinggi batang yang cukup mencolok ini mencerminkan adanya variasi kondisi ekonomi antar wilayah. Dominasi Klasifikasi Stabil mengindikasikan bahwa sebagian besar wilayah telah memiliki basis ekonomi yang mapan, sementara kelompok Klasifikasi Rentan menunjukkan masih adanya kantong-kantong wilayah yang memerlukan perhatian khusus dalam penanganan kemiskinan. Ketimpangan frekuensi ini menjadi indikasi awal adanya persebaran status ekonomi yang belum merata, yang nantinya akan terlihat lebih spesifik saat dilakukan pemisahan data berdasarkan masing-masing provinsi

Bar Chart dengan Frekuensi

Visualisasi ini dibuat untuk menyajikan frekuensi klasifikasi kemiskinan yang dilengkapi dengan label angka di setiap batangnya. Penambahan label ini bertujuan untuk memberikan informasi yang lebih presisi mengenai jumlah pasti kabupaten/kota pada masing-masing klasifikasi tanpa perlu melakukan estimasi melalui sumbu vertikal.

freqtab <- as.data.frame(table(data_analisis$Klasifikasi))
colnames(freqtab) <- c("Klasifikasi", "Frekuensi")

freqtab
##   Klasifikasi Frekuensi
## 1      Stabil        26
## 2      Rentan        15
freqtab$Persen <- round(freqtab$Frekuensi / sum(freqtab$Frekuensi) * 100, 1)

freqtab
##   Klasifikasi Frekuensi Persen
## 1      Stabil        26   63.4
## 2      Rentan        15   36.6
library(ggplot2)

ggplot(freqtab, aes(x = Klasifikasi, y = Frekuensi, fill = Klasifikasi)) +
  
  geom_bar(stat = "identity", color = "black", width = 0.6) +
  
  geom_text(
    aes(label = paste0(Frekuensi, " wilayah\n(", Persen, "%)")),
    vjust = -0.4,
    fontface = "bold",
    size = 4
  ) +
  
  scale_fill_manual(values = c(
    "Stabil" = "#59a14f",
    "Rentan" = "#edc948"
  )) +
  
  theme_bw() +
  
  labs(
    title = "Frekuensi Klasifikasi Kemiskinan Wilayah Sunda Kecil",
    subtitle = "Distribusi jumlah wilayah berdasarkan status ekonomi",
    x = "Kategori Klasifikasi",
    y = "Jumlah Kabupaten/Kota"
  ) +
  
  theme(
    legend.position = "none",
    plot.title = element_text(face = "bold"),
    axis.title = element_text(face = "bold")
  )

Berdasarkan grafik di atas, teridentifikasi bahwa dari total 41 kabupaten/kota di wilayah Sunda Kecil, terdapat 26 wilayah yang berada pada Klasifikasi rentan dan 15 wilayah lainnya berada pada Klasifikasi 1. Secara persentase, ini menunjukkan bahwa sekitar 63% wilayah berada pada kategori kondisi ekonomi yang lebih stabil, sementara 37% sisanya masih menghadapi kendala kemiskinan yang signifikan.

Jika dilihat lebih dalam, jumlah 15 kabupaten/kota di klasifikasi Stabil ini sebenarnya masih tergolong besar untuk satu wilayah kepulauan, karena mencakup hampir sepertiga dari total keseluruhan daerah. Meskipun angka 26 memberikan kesan dominasi daerah yang lebih sejahtera, namun kesenjangan frekuensi ini mengindikasikan bahwa distribusi kesejahteraan di Sunda Kecil belum benar-benar solid atau bersifat asimetris. Data ini menjadi basis penting untuk analisis selanjutnya, di mana kita perlu menelusuri apakah 15 daerah di kategori kemiskinan tinggi tersebut terkonsentrasi di satu provinsi tertentu atau tersebar secara acak di seluruh wilayah Sunda Kecil.

Needle Chart

Needle chart digunakan untuk menampilkan perbandingan frekuensi klasifikasi kemiskinan dalam bentuk visual yang lebih sederhana. Dengan menggunakan garis dan titik sebagai representasi jumlah wilayah pada setiap kategori, grafik ini membantu memperjelas perbedaan frekuensi antar kelompok klasifikasi.

ggplot(freqtab, aes(x = Klasifikasi, y = Frekuensi)) +
  
  geom_segment(aes(x = Klasifikasi, xend = Klasifikasi,
                   y = 0, yend = Frekuensi),
               color = "brown", linewidth = 1.2) +
  
  geom_point(aes(color = Klasifikasi), size = 6) +
  
  geom_text(
    aes(label = paste0(Frekuensi, " wilayah\n(", Persen, "%)")),
    hjust = -0.2,
    fontface = "bold",
    size = 4
  ) +
  
  scale_color_manual(values = c(
    "Stabil" = "#186a3b",
    "Rentan" = "#82e0aa"
  )) +
  
  coord_flip() +
  
  theme_bw() +
  
  labs(
    title = "Perbandingan Frekuensi Klasifikasi Kemiskinan",
    subtitle = "Perbandingan jumlah wilayah stabil dan rentan",
    x = "Kategori Klasifikasi",
    y = "Jumlah Kabupaten/Kota"
  ) +
  
  theme(
    legend.position = "none",
    plot.title = element_text(face = "bold"),
    axis.title = element_text(face = "bold")
  )

Grafik jarum ini mempertegas adanya jarak atau gap frekuensi yang cukup jelas antara kedua kelompok klasifikasi. Secara visual terlihat bahwa jumlah wilayah pada kategori Stabil lebih tinggi dibandingkan kategori Rentan, sehingga perbedaan frekuensi antar kategori dapat diamati dengan cukup jelas.

Bentuk visualisasi yang ramping ini membuat perbedaan angka antar kategori terasa lebih kontras dibandingkan diagram batang biasa. Secara interpretatif, hal ini menunjukkan bahwa sebaran status ekonomi di wilayah Sunda Kecil belum sepenuhnya merata. Sebagian besar wilayah telah berada pada klasifikasi yang relatif stabil, sementara sejumlah wilayah lainnya masih berada pada kondisi yang lebih rentan terhadap permasalahan kemiskinan

Grouped Bar Chart

Grouped bar chart ini digunakan untuk membandingkan sebaran klasifikasi kemiskinan pada ketiga provinsi di wilayah Sunda Kecil. Melalui posisi batang yang berdampingan (dodge), kita dapat mengamati perbedaan jumlah wilayah dengan status ekonomi rendah dan tinggi di Bali, NTB, dan NTT secara langsung.

ggplot(data_analisis, aes(x = Provinsi, fill = Klasifikasi)) +
  
  geom_bar(position = "dodge", color = "black") +
  
  geom_text(
    stat = "count",
    aes(label = ..count..),
    position = position_dodge(width = 0.9),
    vjust = -0.4,
    size = 4,
    fontface = "bold"
  ) +
  
  scale_fill_manual(values = c(
    "Stabil" = "#3498db",
    "Rentan" = "#e74c3c"
  )) +
  
  theme_bw() +
  
  labs(
    title = "Perbandingan Klasifikasi Kemiskinan Berdasarkan Provinsi",
    subtitle = "Distribusi wilayah stabil dan rentan di Bali, NTB, dan NTT",
    x = "Provinsi",
    y = "Jumlah Kabupaten/Kota",
    fill = "Klasifikasi"
  ) +
  
  theme(
    plot.title = element_text(face = "bold"),
    axis.title = element_text(face = "bold")
  )

Visualisasi ini mengungkapkan perbedaan status ekonomi yang sangat kontras antar provinsi di wilayah Sunda Kecil. Provinsi Bali tampil sebagai wilayah dengan kondisi paling stabil, di mana hampir seluruh kabupaten/kotanya dalam dataset ini berada pada Klasifikasi Stabil. Hal ini menandakan adanya kemerataan kesejahteraan yang cukup baik di sana. Sementara itu, Nusa Tenggara Barat (NTB) mulai menunjukkan variasi dengan munculnya sebagian kecil wilayah pada klasifikasi Rentan, meski mayoritas masih berada di klasifikasi Stabil.

Kondisi yang paling menonjol terlihat di Nusa Tenggara Timur (NTT), di mana jumlah wilayah dengan Klasifikasi Rentan justru mendominasi dan jauh lebih tinggi dibandingkan provinsi tetangganya. Perbedaan tinggi batang yang jomplang ini memberikan bukti kuat bahwa persoalan kemiskinan di Sunda Kecil terkonsentrasi di wilayah timur, sehingga diperlukan strategi pembangunan yang lebih spesifik dan tidak bisa disamaratakan antar provinsi.

Facet Bar Chart

Visualisasi facet ini digunakan untuk mengamati distribusi klasifikasi kemiskinan di masing-masing provinsi secara individual melalui panel yang terpisah. Grafik ini memudahkan kita dalam melihat profil internal tiap wilayah sekaligus membandingkan karakteristik kemiskinan antar provinsi tanpa tumpukan data.

ggplot(data_analisis, aes(x = Klasifikasi, fill = Klasifikasi)) +
  
  geom_bar(color = "black") +
  
  geom_text(
    stat = "count",
    aes(label = ..count..),
    vjust = -0.4,
    fontface = "bold",
    size = 4
  ) +
  
  facet_wrap(~Provinsi) +
  
  scale_fill_manual(values = c(
    "Stabil" = "#78281f",
    "Rentan" = "#edbb99"
  )) +
  
  theme_bw() +
  
  labs(
    title = "Distribusi Klasifikasi Kemiskinan per Provinsi",
    subtitle = "Perbandingan jumlah wilayah stabil dan rentan pada tiap provinsi",
    x = "Klasifikasi",
    y = "Jumlah Kabupaten/Kota"
  ) +
  
  theme(
    legend.position = "none",
    plot.title = element_text(face = "bold"),
    axis.title = element_text(face = "bold")
  )

Melalui pembagian panel per wilayah, terlihat tiga profil distribusi yang berbeda secara mendalam. Panel Bali menunjukkan tingkat kesejahteraan yang sangat homogen di level tinggi, sedangkan panel NTB mulai memperlihatkan sedikit variasi namun tetap didominasi oleh wilayah klasifikasi Stabil. Sebaliknya, panel NTT menunjukkan karakteristik yang paling berat ke arah Klasifikasi Rentan, mencerminkan beban pembangunan yang jauh lebih besar dibandingkan dua provinsi lainnya.

Isolasi data ini memudahkan kita untuk melihat bahwa setiap provinsi memiliki tantangan internal yang berbeda; NTT memerlukan intervensi kebijakan yang masif untuk bisa mendorong daerah-daerahnya bergeser menuju profil ekonomi yang lebih stabil seperti yang dimiliki oleh Bali. Dengan demikian, visualisasi ini menunjukkan bahwa karakteristik kemiskinan di wilayah Sunda Kecil tidak bersifat homogen, melainkan dipengaruhi oleh kondisi sosial ekonomi masing-masing provinsi.

Count Plot

Count plot ini digunakan untuk memberikan gambaran mengenai total jumlah kabupaten/kota di setiap provinsi wilayah Sunda Kecil. Visualisasi ini menjadi landasan untuk memahami perbandingan skala administrasi antara Bali, NTB, dan NTT dalam analisis klasifikasi ekonomi.

ggplot(data_analisis, aes(x = Provinsi, fill = Provinsi)) +
  
  geom_bar(color = "black", alpha = 0.9) +
  
  geom_text(
    stat = "count",
    aes(label = ..count..),
    vjust = -0.4,
    fontface = "bold",
    size = 4
  ) +
  
  scale_fill_manual(values = c(
    "BALI" = "#212f3d",
    "NUSA TENGGARA BARAT" = "#566573",
    "NUSA TENGGARA TIMUR" = "#aeb6bf"
  )) +
  
  theme_bw() +
  
  labs(
    title = "Jumlah Kabupaten/Kota di Wilayah Sunda Kecil",
    subtitle = "Distribusi wilayah administratif pada setiap provinsi",
    x = "Provinsi",
    y = "Jumlah Kabupaten/Kota"
  ) +
  
  theme(
    legend.position = "none",
    plot.title = element_text(face = "bold"),
    axis.title = element_text(face = "bold")
  )

Grafik ini memperlihatkan bahwa Nusa Tenggara Timur (NTT) memiliki jumlah kabupaten/kota paling banyak di wilayah ini, yaitu mencapai 22 wilayah. Angka ini jauh lebih tinggi jika dibandingkan dengan Nusa Tenggara Barat (NTB) yang memiliki 10 wilayah serta Bali dengan 9 wilayah.

Informasi ini sangat krusial untuk menyeimbangkan interpretasi kita pada grafik-grafik sebelumnya. Banyaknya jumlah daerah dengan Klasifikasi Stabil di NTT ternyata sebanding dengan luasnya cakupan administrasi yang dikelola di provinsi tersebut. Dengan jumlah kabupaten/kota yang dua kali lipat lebih banyak dari provinsi tetangganya, NTT memang memiliki beban pembangunan yang jauh lebih besar dan kompleks. Hal ini menegaskan bahwa angka statistik kemiskinan tidak bisa dilepaskan dari konteks jumlah wilayah yang harus ditangani oleh masing-masing pemerintah daerah

Stacked Bar

ggplot(data_analisis, aes(x = Provinsi, fill = Klasifikasi)) +
  geom_bar(color = "white", size = 0.5) +
  
  scale_fill_manual(values = c(
    "Stabil" = "#6a4c93",   # ungu
    "Rentan" = "#e63946"    # merah
  )) +
  
  labs(
    title = "Distribusi Klasifikasi Kemiskinan di Pulau Sunda Kecil",
    x = "Provinsi",
    y = "Jumlah Kabupaten/Kota",
    fill = "Klasifikasi"
  ) +
  
  theme_bw() +
  theme(
    plot.title = element_text(face = "bold", size = 14),
    axis.title = element_text(face = "bold"),
    legend.position = "right"
  )
## Warning in geom_bar(color = "white", size = 0.5): Ignoring unknown parameters:
## `size`

Grafik menunjukkan distribusi jumlah kabupaten/kota berdasarkan klasifikasi kemiskinan di tiga provinsi di wilayah Sunda Kecil, yaitu Bali, Nusa Tenggara Barat (NTB), dan Nusa Tenggara Timur (NTT). Setiap batang menggambarkan jumlah kabupaten/kota dengan status Stabil dan Rentan di masing-masing provinsi.

Secara umum terlihat bahwa setiap provinsi memiliki perbedaan jumlah wilayah yang tergolong stabil maupun rentan. Pada Bali, sebagian besar kabupaten/kota berada pada kategori Stabil, sementara jumlah wilayah yang tergolong Rentan relatif lebih sedikit. Pada Nusa Tenggara Barat, komposisi wilayah stabil dan rentan terlihat lebih bervariasi. Sementara itu, pada Nusa Tenggara Timur, jumlah wilayah yang termasuk kategori Rentan tampak lebih banyak dibandingkan kategori stabil.

pie chart

library(dplyr)

#hitung jumalah dan persentase tiap klasifikasi
pie_data <- data_analisis %>% count(Klasifikasi)

pie_data <- data_analisis %>%
  count(Klasifikasi) %>%
  mutate(persen = n / sum(n) * 100)
pie_data
## # A tibble: 2 × 3
##   Klasifikasi     n persen
##   <fct>       <int>  <dbl>
## 1 Stabil         26   63.4
## 2 Rentan         15   36.6
#pie chart
ggplot(pie_data, aes(x = "", y = n, fill = Klasifikasi)) +
  geom_bar(stat = "identity", width = 1) +
  coord_polar("y") +
  
  geom_text(aes(label = paste0(round(persen,1), "%")),
            position = position_stack(vjust = 0.5)) +
  
  scale_fill_manual(values = c(
    "Stabil" = "#6a4c93",
    "Rentan" = "#e63946"
  )) +
  
  theme_void()

Diagram pie menunjukkan proporsi klasifikasi kemiskinan kabupaten/kota di wilayah Sunda Kecil. Diagram ini membagi seluruh wilayah yang dianalisis ke dalam dua kategori, yaitu Stabil dan Rentan, sehingga dapat terlihat perbandingan jumlah wilayah pada masing-masing kategori.

Berdasarkan diagram tersebut, terlihat bahwa wilayah dengan klasifikasi Rentan dan Stabil memiliki proporsi yang berbeda terhadap total kabupaten/kota yang dianalisis. Bagian diagram yang lebih besar menunjukkan kategori yang jumlah wilayahnya lebih dominan, sedangkan bagian yang lebih kecil menunjukkan kategori dengan jumlah wilayah yang lebih sedikit.

Secara deskriptif, diagram ini memberikan gambaran mengenai komposisi keseluruhan kondisi kemiskinan wilayah di kawasan Sunda Kecil, sehingga dapat diketahui apakah wilayah dengan kondisi stabil atau wilayah yang masih rentan lebih mendominasi dalam data yang dianalisis.

peta spasial

library(readxl)
library(sf)
## Linking to GEOS 3.13.1, GDAL 3.11.0, PROJ 9.6.0; sf_use_s2() is TRUE
library(dplyr)
library(ggplot2)

data_analisis <- read_excel("Klasifikasi_Kemiskinan_di_Pulau_Sunda_Kecil.xlsx")
head(data_analisis)
## # A tibble: 6 × 13
##   Provinsi `Kab/Kota` Persentase Penduduk Miskin (P0) M…¹ Rata-rata Lama Sekol…²
##   <chr>    <chr>                                    <dbl>                  <dbl>
## 1 BALI     Jembrana                                  5.06                   8.35
## 2 BALI     Tabanan                                   5.12                   9.14
## 3 BALI     Badung                                    2.62                  10.6 
## 4 BALI     Gianyar                                   4.85                   9.29
## 5 BALI     Klungkung                                 5.64                   8.14
## 6 BALI     Bangli                                    5.09                   7.18
## # ℹ abbreviated names:
## #   ¹​`Persentase Penduduk Miskin (P0) Menurut Kabupaten/Kota (Persen)`,
## #   ²​`Rata-rata Lama Sekolah Penduduk 15+ (Tahun)`
## # ℹ 9 more variables:
## #   `Pengeluaran per Kapita Disesuaikan (Ribu Rupiah/Orang/Tahun)` <dbl>,
## #   `Indeks Pembangunan Manusia` <dbl>, `Umur Harapan Hidup (Tahun)` <dbl>,
## #   `Persentase rumah tangga yang memiliki akses terhadap sanitasi layak` <dbl>, …
colnames(data_analisis) <- c("Provinsi", "KabKota", "Kemiskinan", "Sekolah", 
                             "Pengeluaran", "IPM", "HarapanHidup", "Sanitasi", 
                             "AirMinum", "Pengangguran", "TPAK", "PDRB", "Klasifikasi")

st_layers("RBI50K_ADMINISTRASI_KABKOTA_20230907.gdb")
## Driver: OpenFileGDB 
## Available layers:
##                layer_name     geometry_type features fields
## 1 ADMINISTRASI_LN_KABKOTA Multi Line String     1297     24
## 2 ADMINISTRASI_AR_KABKOTA  3D Multi Polygon      548     25
##                  crs_name
## 1 WGS 84 + EGM2008 height
## 2 WGS 84 + EGM2008 height
#Import shapefile kabupaten/kota
peta <- st_read(
  "RBI50K_ADMINISTRASI_KABKOTA_20230907.gdb",
  layer = "ADMINISTRASI_AR_KABKOTA"
)
## Reading layer `ADMINISTRASI_AR_KABKOTA' from data source 
##   `C:\Users\Lenovo\OneDrive - untirta.ac.id\dokumen\KULIAH\STATISTIKA\MATA KULIAH\SEMESTER 4\eksplorasi dan visualisasi data\RBI50K_ADMINISTRASI_KABKOTA_20230907.gdb' 
##   using driver `OpenFileGDB'
## Warning in CPL_read_ogr(dsn, layer, query, as.character(options), quiet, : GDAL
## Message 1: organizePolygons() received a polygon with more than 100 parts.  The
## processing may be really slow.  You can skip the processing by setting
## METHOD=SKIP.
## Simple feature collection with 548 features and 25 fields
## Geometry type: GEOMETRY
## Dimension:     XYZ
## Bounding box:  xmin: 94.97191 ymin: -11.00762 xmax: 141.02 ymax: 6.076832
## z_range:       zmin: 0 zmax: 0
## Geodetic CRS:  WGS 84 + EGM2008 height
names(peta)
##  [1] "NAMOBJ"       "FCODE"        "REMARK"       "METADATA"     "SRS_ID"      
##  [6] "KDBBPS"       "KDCBPS"       "KDCPUM"       "KDEBPS"       "KDEPUM"      
## [11] "KDPBPS"       "KDPKAB"       "KDPPUM"       "LUASWH"       "TIPADM"      
## [16] "WADMKC"       "WADMKD"       "WADMKK"       "WADMPR"       "WIADKC"      
## [21] "WIADKK"       "WIADPR"       "WIADKD"       "SHAPE_Length" "SHAPE_Area"  
## [26] "SHAPE"
#filter wilayah sunda kecil
peta_sunda <- peta %>%
  filter(WADMPR %in% c(
    "Bali",
    "Nusa Tenggara Barat",
    "Nusa Tenggara Timur"
  ))
names(peta_sunda)
##  [1] "NAMOBJ"       "FCODE"        "REMARK"       "METADATA"     "SRS_ID"      
##  [6] "KDBBPS"       "KDCBPS"       "KDCPUM"       "KDEBPS"       "KDEPUM"      
## [11] "KDPBPS"       "KDPKAB"       "KDPPUM"       "LUASWH"       "TIPADM"      
## [16] "WADMKC"       "WADMKD"       "WADMKK"       "WADMPR"       "WIADKC"      
## [21] "WIADKK"       "WIADPR"       "WIADKD"       "SHAPE_Length" "SHAPE_Area"  
## [26] "SHAPE"
names(data_analisis)
##  [1] "Provinsi"     "KabKota"      "Kemiskinan"   "Sekolah"      "Pengeluaran" 
##  [6] "IPM"          "HarapanHidup" "Sanitasi"     "AirMinum"     "Pengangguran"
## [11] "TPAK"         "PDRB"         "Klasifikasi"
#gabungkan peta dengan data excel
peta_data <- left_join(
  peta_sunda,
  data_analisis,
  by = c("WADMKK" = "KabKota")
)

peta_data$Klasifikasi <- factor(
  peta_data$Klasifikasi,
  levels = c(0,1),
  labels = c("Stabil","Rentan")
)
#buat peta spasial
ggplot(peta_data) +
  geom_sf(aes(fill = Klasifikasi), color = "white", size = 0.2) +

  scale_fill_manual(values = c(
    "Stabil" = "#6a4c93",
    "Rentan" = "#e63946"
  )) +

  coord_sf(
    xlim = c(114, 126),   # batas barat - timur Sunda Kecil
    ylim = c(-12, -7)     # batas selatan - utara
  ) +

  labs(
    title = "Peta Persebaran Klasifikasi Kemiskinan",
    subtitle = "Kabupaten/Kota di Bali, NTB, dan NTT",
    fill = "Klasifikasi"
  ) +

  theme_minimal()