<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>data hujan | Irpan Chumaedi</title><link>https://www.irpanchumaedi.com/tag/data-hujan/</link><atom:link href="https://www.irpanchumaedi.com/tag/data-hujan/index.xml" rel="self" type="application/rss+xml"/><description>data hujan</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><lastBuildDate>Mon, 18 May 2026 00:00:00 +0000</lastBuildDate><image><url>https://www.irpanchumaedi.com/images/icon_huc8b49dbecede763dad003ee9bbdb929f_244914_512x512_fill_lanczos_center_2.png</url><title>data hujan</title><link>https://www.irpanchumaedi.com/tag/data-hujan/</link></image><item><title>Rekap &amp; Visualisasi Data Hujan dengan Excel</title><link>https://www.irpanchumaedi.com/post/materi-visualisasi-data-hujan-excel/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://www.irpanchumaedi.com/post/materi-visualisasi-data-hujan-excel/</guid><description>
&lt;iframe
src="https://www.irpanchumaedi.com/html/rekap-visualisasi-data-hujan.html"
width="100%"
height="920px"
style="border:none; border-radius:10px; display:block;"
loading="lazy"
title="Rekap dan Visualisasi Data Hujan dengan Excel">
&lt;/iframe>
&lt;hr>
&lt;p>&lt;small> 🔽&lt;a href="https://1drv.ms/x/c/22f5ef4527203c63/IQCF8XwJQ0FlSbOszk5HB-tMAblXsphp4gsBaUdwiihCZ1c?e=Modg3o" target="_blank" rel="noopener">Download &lt;/a>data hujan Sta. Cemara, Bandung 2000-2025. &lt;/small>&lt;/p></description></item><item><title>Rekap &amp; Visualisasi Data Hujan dengan R &amp; ggplot2</title><link>https://www.irpanchumaedi.com/post/materi-visualisasi-r-ggplot2/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://www.irpanchumaedi.com/post/materi-visualisasi-r-ggplot2/</guid><description>
&lt;iframe
src="https://www.irpanchumaedi.com/html/visualisasi-data-hujan-r-ggplot2.html"
width="100%"
height="920px"
style="border:none; border-radius:10px; display:block;"
loading="lazy"
title="Rekap dan Visualisasi Data Hujan dengan Excel">
&lt;/iframe>
&lt;hr>
&lt;p>&lt;small> 🔽&lt;a href="https://1drv.ms/x/c/22f5ef4527203c63/IQCF8XwJQ0FlSbOszk5HB-tMAblXsphp4gsBaUdwiihCZ1c?e=Modg3o" target="_blank" rel="noopener">Download &lt;/a>data hujan Sta. Cemara, Bandung 2000-2025. &lt;/small>&lt;/p></description></item><item><title>Download Data Hujan BMKG: Cara Akses, Keterbatasan, dan Strategi Data Hilang</title><link>https://www.irpanchumaedi.com/post/materi-download-bmkg/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid>https://www.irpanchumaedi.com/post/materi-download-bmkg/</guid><description>&lt;h2 id="data-bmkg-sebagai-referensi-utama">Data BMKG sebagai Referensi Utama&lt;/h2>
&lt;p>Data curah hujan observasi dari &lt;strong>Badan Meteorologi, Klimatologi, dan Geofisika (BMKG)&lt;/strong> adalah referensi primer dalam setiap studi hidrologi di Indonesia. Berbeda dengan data satelit (GPM IMERG) yang merupakan estimasi, data BMKG berasal dari &lt;strong>pengukuran langsung&lt;/strong> di lapangan menggunakan penakar hujan standar.&lt;/p>
&lt;p>&lt;strong>Keunggulan data BMKG:&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>✅ Data pengukuran langsung (ground truth)&lt;/li>
&lt;li>✅ Umumnya tersedia hingga puluhan tahun (beberapa stasiun sejak 1970-an)&lt;/li>
&lt;li>✅ Diakui secara legal dan ilmiah untuk keperluan perizinan dan AMDAL&lt;/li>
&lt;li>✅ Menjadi acuan kalibrasi/validasi untuk data satelit&lt;/li>
&lt;/ul>
&lt;p>&lt;strong>Keterbatasan data BMKG:&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>❌ Kerapatan stasiun tidak merata — banyak area terpencil tidak terjangkau&lt;/li>
&lt;li>❌ Data seringkali tidak lengkap (banyak missing data)&lt;/li>
&lt;li>❌ Akses data historis panjang memerlukan permohonan resmi (berbayar)&lt;/li>
&lt;li>❌ Portal online hanya tersedia 2 tahun terakhir secara gratis&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="cara-mengakses-data-bmkg">Cara Mengakses Data BMKG&lt;/h2>
&lt;p>Ada tiga jalur utama untuk mendapatkan data curah hujan BMKG:&lt;/p>
&lt;h3 id="jalur-1-portal-bmkg-data-online-gratis-terbatas-2-tahun">Jalur 1: Portal BMKG Data Online (Gratis, Terbatas 2 Tahun)&lt;/h3>
&lt;p>🔗 &lt;strong>URL:&lt;/strong> &lt;a href="https://dataonline.bmkg.go.id/" target="_blank" rel="noopener">https://dataonline.bmkg.go.id/&lt;/a>&lt;/p>
&lt;p>Portal ini menyediakan akses gratis ke data iklim (curah hujan, suhu, kelembaban, dll.) namun &lt;strong>hanya 2 tahun terakhir&lt;/strong> yang bisa diunduh secara mandiri.&lt;/p>
&lt;p>&lt;strong>Langkah akses:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Buka &lt;a href="https://dataonline.bmkg.go.id/" target="_blank" rel="noopener">https://dataonline.bmkg.go.id/&lt;/a>&lt;/li>
&lt;li>Klik &lt;strong>&amp;ldquo;Masuk&amp;rdquo;&lt;/strong> → daftar akun gratis jika belum punya&lt;/li>
&lt;li>Pilih menu &lt;strong>&amp;ldquo;Data Iklim&amp;rdquo;&lt;/strong> → &lt;strong>&amp;ldquo;Unduh Data&amp;rdquo;&lt;/strong>&lt;/li>
&lt;li>Pilih stasiun, parameter (Curah Hujan / RR), dan periode waktu&lt;/li>
&lt;li>Format output: &lt;strong>Excel (.xlsx)&lt;/strong> atau CSV&lt;/li>
&lt;/ol>
&lt;blockquote>
&lt;p>&lt;strong>Catatan penting:&lt;/strong> Server BMKG Data Online menerapkan pembatasan ketat. Permintaan data lebih dari 2 tahun akan ditolak secara otomatis oleh sistem, bukan karena akun terbatas.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="jalur-2-permohonan-resmi-ke-upt-bmkg-data-historis-panjang">Jalur 2: Permohonan Resmi ke UPT BMKG (Data Historis Panjang)&lt;/h3>
&lt;p>Untuk data historis lebih dari 2 tahun (misalnya 10–30 tahun untuk keperluan AMDAL), kamu perlu mengajukan &lt;strong>permohonan data resmi&lt;/strong> ke Balai Besar / UPT BMKG setempat.&lt;/p>
&lt;p>&lt;strong>Prosedur permohonan:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Buat surat permohonan data resmi di atas kop perusahaan/instansi&lt;/li>
&lt;li>Cantumkan: nama stasiun, parameter, periode, dan tujuan penggunaan&lt;/li>
&lt;li>Kirimkan ke UPT BMKG yang membawahi wilayah stasiun target&lt;/li>
&lt;li>Biaya: bervariasi, umumnya &lt;strong>Rp 50.000 – Rp 500.000&lt;/strong> per stasiun per periode (PNBP)&lt;/li>
&lt;li>Waktu proses: &lt;strong>1–3 minggu&lt;/strong> tergantung beban kerja UPT&lt;/li>
&lt;/ol>
&lt;p>&lt;strong>Kontak UPT BMKG berdasarkan wilayah:&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Wilayah&lt;/th>
&lt;th>UPT BMKG&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Jawa Barat&lt;/td>
&lt;td>BMKG Stamet Bandung, BBTMC Serpong&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Kalimantan Selatan&lt;/td>
&lt;td>BMKG Staklim Banjarbaru&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Kalimantan Timur&lt;/td>
&lt;td>BMKG Staklim Samarinda&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Maluku Utara&lt;/td>
&lt;td>BMKG Stamet Ternate&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Sulawesi&lt;/td>
&lt;td>BMKG Staklim Makassar&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;hr>
&lt;h2 id="memahami-format-data-bmkg">Memahami Format Data BMKG&lt;/h2>
&lt;p>Data yang diunduh dari portal BMKG biasanya berbentuk tabel Excel dengan format seperti ini:&lt;/p>
&lt;pre>&lt;code>Nama Stasiun : Stasiun Klimatologi Banjarbaru
Lintang : -3.4425° LS
Bujur : 114.8253° BT
Elevasi : 66 m
Parameter : Curah Hujan (mm)
Tanggal | RR
-----------|------
2023-01-01 | 15.2
2023-01-02 | 0.0
2023-01-03 | 8888 ← kode data hilang (missing)
2023-01-04 | 9999 ← kode tidak ada pengamatan
2023-01-05 | 22.4
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Kode khusus yang sering muncul:&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Kode&lt;/th>
&lt;th>Makna&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>8888&lt;/code>&lt;/td>
&lt;td>Data hilang / tidak tercatat&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>9999&lt;/code>&lt;/td>
&lt;td>Tidak ada pengamatan (hari libur, dll.)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>-&lt;/code> atau &lt;code>NaN&lt;/code>&lt;/td>
&lt;td>Tidak ada data&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>0.0&lt;/code>&lt;/td>
&lt;td>Tidak hujan (hari kering)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>Tr&lt;/code>&lt;/td>
&lt;td>&lt;em>Trace&lt;/em> — hujan sangat kecil, tidak terukur (&amp;lt;0.5 mm)&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;strong>Penting:&lt;/strong> Jangan sampai kode &lt;code>8888&lt;/code> atau &lt;code>9999&lt;/code> ikut dihitung sebagai nilai curah hujan! Ini adalah kesalahan umum yang membuat analisis frekuensi menjadi tidak valid.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="identifikasi-dan-penanganan-data-hilang-missing-data">Identifikasi dan Penanganan Data Hilang (Missing Data)&lt;/h2>
&lt;h3 id="langkah-1-hitung-persentase-data-hilang">Langkah 1: Hitung Persentase Data Hilang&lt;/h3>
&lt;p>Sebelum menggunakan data BMKG, wajib hukumnya mengecek kualitas data:&lt;/p>
&lt;pre>&lt;code class="language-r"># ============================================================
# Identifikasi missing data pada dataset BMKG
# ============================================================
options(OutDec = &amp;quot;.&amp;quot;)
library(dplyr)
library(lubridate)
# Baca data (sesuaikan path)
data_hujan &amp;lt;- read.csv(&amp;quot;data_bmkg_banjarbaru.csv&amp;quot;,
stringsAsFactors = FALSE)
# Konversi tanggal
data_hujan$tanggal &amp;lt;- as.Date(data_hujan$tanggal, format = &amp;quot;%Y-%m-%d&amp;quot;)
# Ganti kode missing dengan NA
data_hujan$rr[data_hujan$rr %in% c(8888, 9999)] &amp;lt;- NA
data_hujan$rr[data_hujan$rr == &amp;quot;Tr&amp;quot;] &amp;lt;- 0 # Trace dianggap 0
# Hitung persentase missing per tahun
ringkasan_missing &amp;lt;- data_hujan %&amp;gt;%
mutate(tahun = year(tanggal)) %&amp;gt;%
group_by(tahun) %&amp;gt;%
summarise(
total_hari = n(),
hari_missing = sum(is.na(rr)),
persen_missing = round(hari_missing / total_hari * 100, 1)
)
print(ringkasan_missing)
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Panduan interpretasi kualitas data:&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Persentase Missing&lt;/th>
&lt;th>Kategori&lt;/th>
&lt;th>Tindakan&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&amp;lt; 5%&lt;/td>
&lt;td>Baik&lt;/td>
&lt;td>Imputasi sederhana&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>5% – 15%&lt;/td>
&lt;td>Cukup&lt;/td>
&lt;td>Imputasi dengan stasiun tetangga&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>15% – 30%&lt;/td>
&lt;td>Kurang&lt;/td>
&lt;td>Pertimbangkan data satelit sebagai suplemen&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&amp;gt; 30%&lt;/td>
&lt;td>Buruk&lt;/td>
&lt;td>Hindari penggunaan, gunakan GPM IMERG&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;h3 id="langkah-2-strategi-imputasi-data-hilang">Langkah 2: Strategi Imputasi Data Hilang&lt;/h3>
&lt;p>Ada beberapa metode pengisian data hilang, pilih berdasarkan kondisi lapangan:&lt;/p>
&lt;h4 id="metode-1-rata-rata-stasiun-tetangga-normal-ratio-method">Metode 1: Rata-rata Stasiun Tetangga (Normal Ratio Method)&lt;/h4>
&lt;p>Metode ini menggunakan bobot berdasarkan rasio curah hujan normal tahunan antara stasiun target dan stasiun pengisi.&lt;/p>
&lt;pre>&lt;code class="language-r"># ============================================================
# Imputasi dengan Normal Ratio Method
# ============================================================
# Curah hujan tahunan rata-rata (mm/tahun) dari masing-masing stasiun
# Dapatkan nilai ini dari 10–30 tahun data di tiap stasiun
n_target &amp;lt;- 2100 # Stasiun target (yang punya missing data)
n_stasiun1 &amp;lt;- 1950 # Stasiun tetangga 1
n_stasiun2 &amp;lt;- 2300 # Stasiun tetangga 2
n_stasiun3 &amp;lt;- 2050 # Stasiun tetangga 3
# Jika deviasi curah hujan normal antar stasiun &amp;lt; 10%:
# Gunakan rata-rata aritmetika sederhana
# Jika deviasi ≥ 10%: Gunakan Normal Ratio Method
hitung_imputasi_normal_ratio &amp;lt;- function(rr1, rr2, rr3,
n_t, n_1, n_2, n_3) {
# Formula: P_x = (N_x/3) * (P_1/N_1 + P_2/N_2 + P_3/N_3)
nilai &amp;lt;- (n_t / 3) * (rr1/n_1 + rr2/n_2 + rr3/n_3)
return(round(nilai, 1))
}
# Contoh pengisian untuk satu hari missing
rr_imputasi &amp;lt;- hitung_imputasi_normal_ratio(
rr1 = 18.5, rr2 = 22.0, rr3 = 15.8,
n_t = n_target, n_1 = n_stasiun1,
n_2 = n_stasiun2, n_3 = n_stasiun3
)
cat(&amp;quot;Curah hujan hasil imputasi:&amp;quot;, rr_imputasi, &amp;quot;mm\n&amp;quot;)
&lt;/code>&lt;/pre>
&lt;h4 id="metode-2-inverse-distance-weighting-idw-antar-stasiun">Metode 2: Inverse Distance Weighting (IDW) antar Stasiun&lt;/h4>
&lt;pre>&lt;code class="language-r"># ============================================================
# Imputasi dengan IDW berdasarkan jarak antar stasiun
# ============================================================
# Koordinat stasiun (dalam derajat desimal)
stasiun &amp;lt;- data.frame(
nama = c(&amp;quot;Target&amp;quot;, &amp;quot;Sts_1&amp;quot;, &amp;quot;Sts_2&amp;quot;, &amp;quot;Sts_3&amp;quot;),
lon = c(114.825, 114.600, 115.100, 114.700),
lat = c(-3.443, -3.200, -3.600, -3.700),
rr_hari = c(NA, 18.5, 22.0, 15.8) # NA = missing
)
# Hitung jarak Euclidean (approx) dalam km
hitung_jarak_km &amp;lt;- function(lon1, lat1, lon2, lat2) {
dx &amp;lt;- (lon2 - lon1) * 111.32 * cos(lat1 * pi / 180)
dy &amp;lt;- (lat2 - lat1) * 110.57
sqrt(dx^2 + dy^2)
}
stasiun_pengisi &amp;lt;- stasiun[!is.na(stasiun$rr_hari), ]
# Hitung jarak dari stasiun target ke pengisi
stasiun_pengisi$jarak &amp;lt;- mapply(
hitung_jarak_km,
lon1 = stasiun$lon[1], lat1 = stasiun$lat[1],
lon2 = stasiun_pengisi$lon, lat2 = stasiun_pengisi$lat
)
# Bobot IDW (1/d^2)
stasiun_pengisi$bobot &amp;lt;- 1 / stasiun_pengisi$jarak^2
# Curah hujan hasil IDW
rr_idw &amp;lt;- sum(stasiun_pengisi$rr_hari * stasiun_pengisi$bobot) /
sum(stasiun_pengisi$bobot)
cat(&amp;quot;Curah hujan IDW:&amp;quot;, round(rr_idw, 1), &amp;quot;mm\n&amp;quot;)
&lt;/code>&lt;/pre>
&lt;h4 id="metode-3-isi-dengan-data-gpm-imerg-rekomendasi-modern">Metode 3: Isi dengan Data GPM IMERG (Rekomendasi Modern)&lt;/h4>
&lt;p>Jika tidak ada stasiun tetangga yang memadai, data GPM IMERG Final Run bisa digunakan untuk mengisi missing data setelah dilakukan &lt;strong>bias correction&lt;/strong>:&lt;/p>
&lt;pre>&lt;code class="language-r"># ============================================================
# Koreksi bias GPM IMERG menggunakan ratio scaling
# ============================================================
# Periode yang memiliki data lengkap di keduanya (untuk kalibrasi)
# bmkg_lengkap = data BMKG periode overlap (tanpa missing)
# gpm_overlap = data GPM periode yang sama
# Hitung faktor koreksi bulanan
faktor_koreksi &amp;lt;- data.frame(
bulan = 1:12,
fc = tapply(bmkg_lengkap$rr, month(bmkg_lengkap$tanggal),
mean, na.rm = TRUE) /
tapply(gpm_overlap$rr, month(gpm_overlap$tanggal),
mean, na.rm = TRUE)
)
# Terapkan koreksi ke GPM untuk mengisi missing BMKG
data_gabungan &amp;lt;- data_hujan # copy data BMKG
bln_missing &amp;lt;- month(data_gabungan$tanggal[is.na(data_gabungan$rr)])
fc_terpilih &amp;lt;- faktor_koreksi$fc[bln_missing]
data_gabungan$rr[is.na(data_gabungan$rr)] &amp;lt;-
gpm_data$rr[is.na(data_hujan$rr)] * fc_terpilih
&lt;/code>&lt;/pre>
&lt;hr>
&lt;h2 id="validasi-kualitas-data-akhir">Validasi Kualitas Data Akhir&lt;/h2>
&lt;p>Setelah imputasi, lakukan validasi visual sebelum data digunakan untuk analisis lanjutan:&lt;/p>
&lt;pre>&lt;code class="language-r"># ============================================================
# Plot curah hujan tahunan untuk deteksi anomali
# ============================================================
library(ggplot2)
data_tahunan &amp;lt;- data_hujan %&amp;gt;%
mutate(tahun = year(tanggal)) %&amp;gt;%
group_by(tahun) %&amp;gt;%
summarise(rr_tahunan = sum(rr, na.rm = TRUE))
ggplot(data_tahunan, aes(x = tahun, y = rr_tahunan)) +
geom_bar(stat = &amp;quot;identity&amp;quot;, fill = &amp;quot;#2196F3&amp;quot;, alpha = 0.8) +
geom_hline(yintercept = mean(data_tahunan$rr_tahunan),
linetype = &amp;quot;dashed&amp;quot;, color = &amp;quot;red&amp;quot;, linewidth = 0.8) +
labs(
title = &amp;quot;Curah Hujan Tahunan — Stasiun BMKG&amp;quot;,
subtitle = &amp;quot;Garis merah: rata-rata periode analisis&amp;quot;,
x = &amp;quot;Tahun&amp;quot;,
y = &amp;quot;Curah Hujan Tahunan (mm)&amp;quot;
) +
theme_bw(base_size = 12)
&lt;/code>&lt;/pre>
&lt;p>Perhatikan anomali seperti lonjakan ekstrem atau nilai nol pada seluruh tahun — ini bisa mengindikasikan kesalahan dalam proses imputasi atau kode missing yang belum tergantikan.&lt;/p>
&lt;hr>
&lt;h2 id="kesimpulan-kapan-gunakan-data-bmkg-vs-gpm-imerg">Kesimpulan: Kapan Gunakan Data BMKG vs GPM IMERG?&lt;/h2>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Kondisi&lt;/th>
&lt;th>Rekomendasi&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Stasiun BMKG &amp;lt; 5 km dari area studi, data lengkap&lt;/td>
&lt;td>Gunakan BMKG saja&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Stasiun BMKG ada tapi banyak missing data (&amp;gt;15%)&lt;/td>
&lt;td>Gabungkan BMKG + GPM (hybrid)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Tidak ada stasiun BMKG dalam radius 20 km&lt;/td>
&lt;td>Gunakan GPM IMERG Final Run&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Keperluan AMDAL formal&lt;/td>
&lt;td>BMKG sebagai primer, GPM sebagai sekunder&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Data &amp;gt; 10 tahun diperlukan dan proses lambat&lt;/td>
&lt;td>GPM + Open-Meteo ERA5 sebagai suplemen&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;h2 id="referensi">Referensi&lt;/h2>
&lt;ul>
&lt;li>BMKG Data Online: &lt;a href="https://dataonline.bmkg.go.id/" target="_blank" rel="noopener">https://dataonline.bmkg.go.id/&lt;/a>&lt;/li>
&lt;li>WMO (2012). &lt;em>Guide to Meteorological Instruments and Methods of Observation&lt;/em>. WMO No. 8.&lt;/li>
&lt;li>Paulhus, J.L.H. &amp;amp; Kohler, M.A. (1952). Interpolation of missing precipitation records. &lt;em>Monthly Weather Review&lt;/em>, 80(8), 129–133.&lt;/li>
&lt;li>Soewarno (1995). &lt;em>Hidrologi: Aplikasi Metode Statistik untuk Analisa Data&lt;/em>. Nova, Bandung.&lt;/li>
&lt;/ul></description></item><item><title>Download Data Hujan GPM IMERG dengan NASA Giovanni</title><link>https://www.irpanchumaedi.com/post/materi-download-gpm/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid>https://www.irpanchumaedi.com/post/materi-download-gpm/</guid><description>&lt;h2 id="mengapa-gpm-imerg">Mengapa GPM IMERG?&lt;/h2>
&lt;p>Ketika data stasiun hujan BMKG tidak tersedia atau tidak mencukupi untuk area studi kamu, &lt;strong>GPM IMERG&lt;/strong> adalah solusi terbaik yang tersedia secara gratis. GPM (&lt;em>Global Precipitation Measurement&lt;/em>) adalah misi satelit bersama NASA dan JAXA yang menghasilkan estimasi curah hujan global setiap 30 menit dengan resolusi spasial 0.1° × 0.1° (~11 km di ekuator).&lt;/p>
&lt;p>&lt;strong>Keunggulan GPM IMERG:&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>✅ Cakupan global termasuk seluruh wilayah Indonesia&lt;/li>
&lt;li>✅ Data historis tersedia sejak &lt;strong>Juni 1998&lt;/strong> (hampir 27 tahun)&lt;/li>
&lt;li>✅ Gratis tanpa registrasi berbayar&lt;/li>
&lt;li>✅ Tersedia dalam resolusi waktu 30 menit, harian, dan bulanan&lt;/li>
&lt;li>✅ Produk Final Run sudah dikoreksi dengan data gauge (stasiun hujan)&lt;/li>
&lt;/ul>
&lt;p>&lt;strong>Keterbatasan yang perlu diketahui:&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>❌ Bukan pengukuran langsung — tetap ada bias, terutama di area pegunungan&lt;/li>
&lt;li>❌ Resolusi spasial ~11 km mungkin kurang detail untuk DAS kecil (&amp;lt;50 km²)&lt;/li>
&lt;li>❌ Memerlukan validasi dengan data stasiun sebelum digunakan untuk desain&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="mengenal-produk-gpm-imerg">Mengenal Produk GPM IMERG&lt;/h2>
&lt;p>Sebelum download, penting memahami tiga varian produk IMERG:&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Produk&lt;/th>
&lt;th>Latensi&lt;/th>
&lt;th>Koreksi Gauge&lt;/th>
&lt;th>Rekomendasi Penggunaan&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>Early Run&lt;/strong>&lt;/td>
&lt;td>~4 jam&lt;/td>
&lt;td>❌ Tidak&lt;/td>
&lt;td>Monitoring banjir real-time&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Late Run&lt;/strong>&lt;/td>
&lt;td>~12 jam&lt;/td>
&lt;td>Sebagian&lt;/td>
&lt;td>Operasional jangka pendek&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Final Run&lt;/strong>&lt;/td>
&lt;td>~3.5 bulan&lt;/td>
&lt;td>✅ Ya&lt;/td>
&lt;td>&lt;strong>Studi hidrologi &amp;amp; AMDAL&lt;/strong> ✓&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;strong>Untuk keperluan AMDAL, kajian hidrologi, dan HEC-HMS → selalu gunakan Final Run (V07B).&lt;/strong>&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="platform-download-nasa-giovanni">Platform Download: NASA Giovanni&lt;/h2>
&lt;p>&lt;strong>NASA Giovanni&lt;/strong> (Geospatial Interactive Online Visualization ANd aNalysis) adalah antarmuka web resmi NASA untuk eksplorasi dan download data geosains termasuk GPM IMERG.&lt;/p>
&lt;p>🔗 &lt;strong>URL:&lt;/strong> &lt;a href="https://giovanni.gsfc.nasa.gov/giovanni/" target="_blank" rel="noopener">https://giovanni.gsfc.nasa.gov/giovanni/&lt;/a>&lt;/p>
&lt;p>Giovanni memungkinkan kamu mengunduh data dalam format NetCDF atau ASCII langsung dari browser — tanpa perlu coding atau command line.&lt;/p>
&lt;hr>
&lt;h2 id="langkah-langkah-download-gpm-imerg-di-giovanni">Langkah-Langkah Download GPM IMERG di Giovanni&lt;/h2>
&lt;h3 id="langkah-1-buka-giovanni-dan-login">Langkah 1: Buka Giovanni dan Login&lt;/h3>
&lt;ol>
&lt;li>Buka &lt;a href="https://giovanni.gsfc.nasa.gov/giovanni/" target="_blank" rel="noopener">https://giovanni.gsfc.nasa.gov/giovanni/&lt;/a>&lt;/li>
&lt;li>Klik &lt;strong>Sign In&lt;/strong> di pojok kanan atas&lt;/li>
&lt;li>Gunakan akun &lt;strong>NASA Earthdata&lt;/strong> (gratis). Jika belum punya, daftar di &lt;a href="https://urs.earthdata.nasa.gov/" target="_blank" rel="noopener">https://urs.earthdata.nasa.gov/&lt;/a>&lt;/li>
&lt;/ol>
&lt;blockquote>
&lt;p>&lt;strong>Tips:&lt;/strong> Pastikan kamu sudah mengaktifkan aplikasi Giovanni di profil Earthdata kamu. Masuk ke profil Earthdata → Applications → Authorized Apps → cari dan authorize Giovanni.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="langkah-2-pilih-tipe-analisis">Langkah 2: Pilih Tipe Analisis&lt;/h3>
&lt;p>Di panel kiri atas, pilih tipe visualisasi/output yang diinginkan:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Time Series, Area Averaged&lt;/strong> → untuk mendapatkan satu nilai rata-rata area per waktu (paling umum untuk hidrologi)&lt;/li>
&lt;li>&lt;strong>Map, Averaged&lt;/strong> → untuk melihat distribusi spasial rata-rata&lt;/li>
&lt;li>&lt;strong>Time Averaged Map&lt;/strong> → peta rata-rata untuk periode tertentu&lt;/li>
&lt;/ul>
&lt;p>Untuk download data deret waktu (time series) curah hujan harian ke R atau Excel → pilih &lt;strong>&amp;ldquo;Time Series, Area Averaged&amp;rdquo;&lt;/strong>.&lt;/p>
&lt;hr>
&lt;h3 id="langkah-3-pilih-variabel-data">Langkah 3: Pilih Variabel Data&lt;/h3>
&lt;ol>
&lt;li>
&lt;p>Di kotak pencarian variabel, ketik: &lt;code>IMERG precipitation&lt;/code>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Dari hasil pencarian, pilih:&lt;/p>
&lt;pre>&lt;code>GPM IMERG Final Precipitation L3 1 day 0.1 degree x 0.1 degree V07
Variable: precipitation
&lt;/code>&lt;/pre>
&lt;p>Nama lengkap: &lt;code>GPM_3IMERGDF_07/precipitation&lt;/code>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>Klik &lt;strong>[+]&lt;/strong> atau &lt;strong>Add&lt;/strong> untuk menambahkan variabel ke daftar aktif.&lt;/p>
&lt;/li>
&lt;/ol>
&lt;blockquote>
&lt;p>&lt;strong>Catatan:&lt;/strong> Produk dengan label &amp;ldquo;&lt;strong>F&lt;/strong>&amp;rdquo; (Final), &amp;ldquo;&lt;strong>D&lt;/strong>&amp;rdquo; (Daily) adalah yang kita gunakan. Hindari produk Early (&amp;ldquo;E&amp;rdquo;) atau Late (&amp;ldquo;L&amp;rdquo;) untuk studi historis.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="langkah-4-tentukan-rentang-waktu">Langkah 4: Tentukan Rentang Waktu&lt;/h3>
&lt;p>Di panel &lt;strong>Date Range&lt;/strong>, masukkan periode analisis:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Start Date:&lt;/strong> Sesuaikan kebutuhan (misal: &lt;code>2000-01-01&lt;/code> atau &lt;code>1998-06-01&lt;/code> untuk data paling awal)&lt;/li>
&lt;li>&lt;strong>End Date:&lt;/strong> Tanggal terakhir yang diinginkan&lt;/li>
&lt;/ul>
&lt;blockquote>
&lt;p>&lt;strong>Untuk studi AMDAL:&lt;/strong> Minimal 10 tahun data. Disarankan mengambil &lt;strong>20 tahun&lt;/strong> untuk analisis frekuensi yang representatif.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="langkah-5-tentukan-area-studi-bounding-box">Langkah 5: Tentukan Area Studi (Bounding Box)&lt;/h3>
&lt;p>Di panel &lt;strong>Bounding Box&lt;/strong>, masukkan koordinat area studi dalam format:&lt;/p>
&lt;pre>&lt;code>West | South | East | North
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Contoh untuk beberapa kota di Indonesia:&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Lokasi&lt;/th>
&lt;th>West&lt;/th>
&lt;th>South&lt;/th>
&lt;th>East&lt;/th>
&lt;th>North&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Banjarmasin&lt;/td>
&lt;td>114.0&lt;/td>
&lt;td>-3.8&lt;/td>
&lt;td>115.0&lt;/td>
&lt;td>-3.0&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Pulau Obi (Maluku Utara)&lt;/td>
&lt;td>127.3&lt;/td>
&lt;td>-1.8&lt;/td>
&lt;td>128.1&lt;/td>
&lt;td>-1.2&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Kutai Barat (Kaltim)&lt;/td>
&lt;td>114.5&lt;/td>
&lt;td>-0.5&lt;/td>
&lt;td>115.5&lt;/td>
&lt;td>0.5&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Bandung&lt;/td>
&lt;td>107.3&lt;/td>
&lt;td>-7.2&lt;/td>
&lt;td>107.8&lt;/td>
&lt;td>-6.7&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;strong>Tips:&lt;/strong> Gunakan Google Maps atau QGIS untuk mendapatkan koordinat bounding box area DAS kamu secara akurat. Tambahkan buffer ~0.5° dari batas DAS untuk memastikan cakupan penuh.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="langkah-6-jalankan-analisis">Langkah 6: Jalankan Analisis&lt;/h3>
&lt;p>Klik tombol &lt;strong>&amp;ldquo;Plot and Download&amp;rdquo;&lt;/strong> (tombol hijau di bawah panel kiri).&lt;/p>
&lt;p>Giovanni akan memproses permintaan dan menampilkan:&lt;/p>
&lt;ul>
&lt;li>Grafik time series interaktif di panel kanan&lt;/li>
&lt;li>Informasi metadata variabel&lt;/li>
&lt;/ul>
&lt;p>Proses ini bisa memakan waktu &lt;strong>beberapa menit&lt;/strong> tergantung panjang periode yang diminta.&lt;/p>
&lt;hr>
&lt;h3 id="langkah-7-download-data">Langkah 7: Download Data&lt;/h3>
&lt;p>Setelah grafik muncul:&lt;/p>
&lt;ol>
&lt;li>Scroll ke bawah grafik, cari tombol &lt;strong>&amp;ldquo;Download&amp;rdquo;&lt;/strong> atau ikon unduh&lt;/li>
&lt;li>Pilih format file:
&lt;ul>
&lt;li>&lt;strong>NetCDF (.nc4)&lt;/strong> → untuk analisis lanjutan di R atau Python&lt;/li>
&lt;li>&lt;strong>ASCII (.csv / .txt)&lt;/strong> → langsung bisa dibuka di Excel&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ol>
&lt;blockquote>
&lt;p>&lt;strong>Rekomendasi:&lt;/strong> Download dalam format &lt;strong>ASCII&lt;/strong> jika hanya butuh time series untuk Excel atau R. Download &lt;strong>NetCDF&lt;/strong> jika butuh data grid spasial untuk pemetaan di QGIS.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="alternatif-download-via-nasa-ges-disc-data-lebih-lengkap">Alternatif: Download via NASA GES DISC (Data Lebih Lengkap)&lt;/h2>
&lt;p>Untuk download dalam jumlah besar atau format file-per-hari (granule), gunakan &lt;strong>NASA GES DISC&lt;/strong>:&lt;/p>
&lt;p>🔗 &lt;a href="https://disc.gsfc.nasa.gov/datasets/GPM_3IMERGDF_07/summary" target="_blank" rel="noopener">https://disc.gsfc.nasa.gov/datasets/GPM_3IMERGDF_07/summary&lt;/a>&lt;/p>
&lt;p>Metode download via GES DISC:&lt;/p>
&lt;ol>
&lt;li>Cari dataset &lt;code>GPM_3IMERGDF_07&lt;/code>&lt;/li>
&lt;li>Klik &lt;strong>&amp;ldquo;Online Archive&amp;rdquo;&lt;/strong>&lt;/li>
&lt;li>Navigasi ke folder tahun/bulan yang diinginkan&lt;/li>
&lt;li>Download file &lt;code>.HDF5&lt;/code> atau gunakan &lt;strong>wget script&lt;/strong> yang disediakan&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="struktur-data-yang-diunduh-format-ascii">Struktur Data yang Diunduh (Format ASCII)&lt;/h2>
&lt;p>Data time series dari Giovanni akan terlihat seperti ini:&lt;/p>
&lt;pre>&lt;code># Units: mm/day
# Variable: GPM IMERG Final Precipitation
# Bounding Box: W=114.0, S=-3.8, E=115.0, N=-3.0
# Start: 2000-01-01, End: 2024-12-31
time, precipitation
2000-01-01, 8.45
2000-01-02, 0.12
2000-01-03, 15.73
...
&lt;/code>&lt;/pre>
&lt;p>Kolom pertama adalah tanggal, kolom kedua adalah curah hujan dalam satuan &lt;strong>mm/hari&lt;/strong>.&lt;/p>
&lt;hr>
&lt;h2 id="langkah-selanjutnya">Langkah Selanjutnya&lt;/h2>
&lt;p>Setelah data berhasil diunduh, langkah berikutnya adalah:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Rekap &amp;amp; Visualisasi&lt;/strong> → Susun data ke Excel atau proses dengan R&lt;/li>
&lt;li>&lt;strong>Validasi&lt;/strong> → Bandingkan dengan data stasiun BMKG terdekat (jika tersedia)&lt;/li>
&lt;li>&lt;strong>Analisis Frekuensi&lt;/strong> → Hitung curah hujan rencana untuk berbagai kala ulang&lt;/li>
&lt;/ol>
&lt;blockquote>
&lt;p>Lihat tutorial selanjutnya: &lt;strong>Visualisasi Data Hujan dengan R &amp;amp; ggplot2&lt;/strong> untuk mengolah data GPM IMERG yang sudah diunduh.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="referensi">Referensi&lt;/h2>
&lt;ul>
&lt;li>Huffman, G.J., et al. (2023). &lt;em>GPM IMERG Final Precipitation L3 1 day 0.1 degree x 0.1 degree V07&lt;/em>. Goddard Earth Sciences Data and Information Services Center (GES DISC). &lt;a href="https://doi.org/10.5067/GPM/IMERGDF/DAY/07" target="_blank" rel="noopener">https://doi.org/10.5067/GPM/IMERGDF/DAY/07&lt;/a>&lt;/li>
&lt;li>NASA Giovanni: &lt;a href="https://giovanni.gsfc.nasa.gov/giovanni/" target="_blank" rel="noopener">https://giovanni.gsfc.nasa.gov/giovanni/&lt;/a>&lt;/li>
&lt;li>NASA GES DISC: &lt;a href="https://disc.gsfc.nasa.gov/" target="_blank" rel="noopener">https://disc.gsfc.nasa.gov/&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Keterbatasan Data Hujan Pos dan Alternatif GPM IMERG</title><link>https://www.irpanchumaedi.com/post/materi-keterbatasan-data-hujan/</link><pubDate>Sun, 10 May 2026 00:00:00 +0000</pubDate><guid>https://www.irpanchumaedi.com/post/materi-keterbatasan-data-hujan/</guid><description>&lt;link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.9.4/leaflet.min.css"/>
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.9.4/leaflet.min.js">&lt;/script>
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/plotly.js/2.27.0/plotly.min.js">&lt;/script>
&lt;p>Ketersediaan data curah hujan yang memadai merupakan fondasi utama dalam analisis hidrologi. Namun di Indonesia, data pos hujan konvensional menghadapi berbagai keterbatasan — terutama di wilayah luar Pulau Jawa.&lt;/p>
&lt;hr>
&lt;h2 id="1-sebaran-stasiun-hujan-bmkg">1. Sebaran Stasiun Hujan BMKG&lt;/h2>
&lt;p>Berdasarkan inventarisasi BMKG, terdapat &lt;strong>6.487 stasiun hujan&lt;/strong> aktif di seluruh Indonesia — terdiri dari Pos Hujan Kerjasama (PHK), Automatic AWS (AAWS), dan UPT.&lt;/p>
&lt;div id="peta-bmkg" style="height:420px;border-radius:8px;margin:1rem 0;border:1px solid rgba(0,0,0,0.1);">&lt;/div>
&lt;p style="font-size:0.8rem;color:#888;text-align:center;">
💡 Zoom masuk untuk melihat nama stasiun &amp;nbsp;·&amp;nbsp; Klik titik untuk detail &amp;nbsp;·&amp;nbsp; Biru = PHK · Merah = AAWS · Hijau = UPT
&lt;/p>
&lt;script>
function initPetaBMKG() {
if (typeof L === 'undefined') {
setTimeout(initPetaBMKG, 100);
return;
}
(function() {
var data = [{"n":"Genteng I","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 171,"lo":113.94690,"la": -8.34778},{"n":"Huta Bagasan","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.32000,"la": 2.75000},{"n":"Surat/Mojo","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 123,"lo":111.95030,"la": -7.88194},{"n":"Niniari","j":"Pos Hujan Kerjasama","p":"Maluku","e":null,"lo":128.40000,"la": -3.07000},{"n":"Kerta Sari","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e":null,"lo":107.28414,"la": -6.20928},{"n":"Wanadadi","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.62580,"la": -7.36860},{"n":"Jonggol","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 137,"lo":107.06590,"la": -6.46790},{"n":"Jatibarang 2","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 22,"lo":109.05470,"la": -6.96297},{"n":"Debut","j":"Pos Hujan Kerjasama","p":"Maluku","e":null,"lo":132.70000,"la": -5.74000},{"n":"Stageof Onowembo","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 97.55200,"la": 1.29000},{"n":"Bakunase","j":"Pos Hujan Kerjasama","p":"Nusa Tenggara Timur","e": 8,"lo":123.58722,"la":-10.18754},{"n":"Lemong","j":"Pos Hujan Kerjasama","p":"Lampung","e":null,"lo":105.20167,"la": -4.60000},{"n":"Bangko","j":"Pos Hujan Kerjasama","p":"Riau","e": 4,"lo":100.80010,"la": 2.17000},{"n":"Gumbil","j":"Pos Hujan Kerjasama","p":"Kalimantan Selatan","e":null,"lo":115.34970,"la": -2.72127},{"n":"Tinjowan Bibitan","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.48000,"la": 3.09000},{"n":"Kaliwringin","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 205,"lo":110.19660,"la": -7.10410},{"n":"Tarsanabaru","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 5,"lo":108.37330,"la": -6.88330},{"n":"Pakkat Hauagong","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e": 531,"lo": 98.46900,"la": 2.17700},{"n":"","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e":null,"lo": 96.00000,"la": 4.32000},{"n":"Talaga","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 636,"lo":108.36670,"la": -6.96667},{"n":"Bener Kelipah","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e":null,"lo": 96.91570,"la": 4.77421},{"n":"Payung","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.46210,"la": -6.99827},{"n":"Borong Rapoa","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e": 707,"lo":120.04420,"la": -5.39417},{"n":"Batang Peranap","j":"Pos Hujan Kerjasama","p":"Riau","e":null,"lo":101.84170,"la": -0.74842},{"n":"Baning","j":"Pos Hujan Kerjasama","p":"Kalimantan Barat","e": 29,"lo":111.50030,"la": -0.06083},{"n":"Sidaharja","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 65,"lo":108.69536,"la": -7.42385},{"n":"Bah Jambi Afd 1","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e": 181,"lo": 99.16400,"la": 2.93200},{"n":"Unib","j":"Pos Hujan Kerjasama","p":"Bengkulu","e": 29,"lo":102.26890,"la": -2.24111},{"n":"Surantih","j":"Pos Hujan Kerjasama","p":"Sumatera Barat","e": 16,"lo":100.65080,"la": 1.59889},{"n":"Sumber Rejo","j":"Pos Hujan Kerjasama","p":"Lampung","e":null,"lo":105.09675,"la": -4.67849},{"n":"Rantau Laban","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.16700,"la": 3.38500},{"n":"Pakembaran","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.13380,"la": -6.98115},{"n":"Setia Bakti","j":"Pos Hujan Kerjasama","p":"Lampung","e":null,"lo":105.27500,"la": -4.40000},{"n":"Beduai","j":"Pos Hujan Kerjasama","p":"Kalimantan Barat","e": 6,"lo":110.39000,"la": 0.70218},{"n":"Karangploso","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 575,"lo":112.59670,"la": -7.90139},{"n":"Situnggaling","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 98.52800,"la": 2.91600},{"n":"Binjai Barat","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e": 32,"lo": 98.49000,"la": 3.62000},{"n":"Bantar Kalong","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 540,"lo":108.08000,"la": -7.07000},{"n":"Losarang","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 4,"lo":108.16670,"la": -6.40000},{"n":"Kuta Cot Glie","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e": 49,"lo": 95.56000,"la": 5.31000},{"n":"Ngargoyoso","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 830,"lo":111.11320,"la": -7.60780},{"n":"Nawangan","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 662,"lo":111.19030,"la": -7.99917},{"n":"Tamansari/Kemuningsari","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 36,"lo":113.61530,"la": -8.28722},{"n":"Pabuaran","j":"Pos Hujan Kerjasama","p":"Banten","e":null,"lo":106.07190,"la": -6.20525},{"n":"Pulerejo/Muneng","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 73,"lo":111.61610,"la": -7.49889},{"n":"Sekerak","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e":null,"lo": 97.92510,"la": 4.34230},{"n":"Loji","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 60,"lo":108.30000,"la": -6.71667},{"n":"Menes","j":"Pos Hujan Kerjasama","p":"Banten","e":null,"lo":105.91990,"la": -6.37667},{"n":"Pesanggrahan/ Depok","j":"Pos Hujan Kerjasama","p":"DKI Jakarta","e": 86,"lo":106.77230,"la": -6.39718},{"n":"Tenggarong Sebrang / Teluk Dalam","j":"Pos Hujan Kerjasama","p":"Kalimantan Timur","e": 29,"lo":117.45560,"la": 2.16353},{"n":"Lawa","j":"Pos Hujan Kerjasama","p":"Kalimantan Selatan","e": 39,"lo":115.00880,"la": -3.24751},{"n":"Salam","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":110.32100,"la": -7.62500},{"n":"Bonegunu","j":"Pos Hujan Kerjasama","p":"Sulawesi Tenggara","e":null,"lo":122.98580,"la": -4.75515},{"n":"Spp Kalasey","j":"Pos Hujan Kerjasama","p":"Sulawesi Utara","e": 46,"lo":124.76830,"la": 1.44639},{"n":"Cukurguling/Lumbang","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 251,"lo":112.97860,"la": -7.78472},{"n":"Ciasem","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 24,"lo":107.65000,"la": -6.35000},{"n":"Bonto Lebang","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e":null,"lo":119.38690,"la": -5.42444},{"n":"Krueng Sabe","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e": 13,"lo": 95.65000,"la": 4.61000},{"n":"Mesuji Raya","j":"Pos Hujan Kerjasama","p":"Sumatera Selatan","e":null,"lo":105.01240,"la": -3.20900},{"n":"Rantau Pandan","j":"Pos Hujan Kerjasama","p":"Jambi","e":null,"lo":102.31190,"la": -1.70127},{"n":"Pulau Rimau","j":"Pos Hujan Kerjasama","p":"Sumatera Selatan","e": 15,"lo":104.46390,"la": -2.60789},{"n":"Pernantian","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.78500,"la": 2.21400},{"n":"Beji","j":"Pos Hujan Kerjasama","p":"DI Yogyakarta","e":null,"lo":110.16000,"la": -7.87000},{"n":"Wadaslintang","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 317,"lo":109.81930,"la": -7.54364},{"n":"Pancur Bpp","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 30,"lo":111.47200,"la": -6.71669},{"n":"Rakumpit","j":"Pos Hujan Kerjasama","p":"Kalimantan Tengah","e": 49,"lo":113.67000,"la": -1.75060},{"n":"Tapung Hulu","j":"Pos Hujan Kerjasama","p":"Riau","e": 88,"lo":100.93880,"la": 0.66305},{"n":"Batukliang","j":"Pos Hujan Kerjasama","p":"Nusa Tenggara Barat","e": 7,"lo":116.30000,"la": -8.57000},{"n":"Condong","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 95,"lo":113.36970,"la": -7.87083},{"n":"Pulau Banyak","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e": 20,"lo": 97.28000,"la": 2.19000},{"n":"Cubadak","j":"Pos Hujan Kerjasama","p":"Sumatera Barat","e":null,"lo":100.54190,"la": 0.46583},{"n":"Prailiu","j":"Pos Hujan Kerjasama","p":"Nusa Tenggara Timur","e": 7,"lo":120.27970,"la": -9.65778},{"n":"Cimanuk","j":"Pos Hujan Kerjasama","p":"Banten","e": 223,"lo":106.04380,"la": -6.35035},{"n":"Junjungan Sirih (Muaro Pingai)","j":"Pos Hujan Kerjasama","p":"Sumatera Barat","e":null,"lo":100.40920,"la": -0.71222},{"n":"Bunder","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e":null,"lo":108.26065,"la": -6.47600},{"n":"Muara Beliti 1","j":"Pos Hujan Kerjasama","p":"Sumatera Selatan","e":null,"lo":103.41640,"la": -3.41636},{"n":"Wanasabakidul","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 116,"lo":108.56670,"la": -6.71670},{"n":"Teritip","j":"Pos Hujan Kerjasama","p":"Kalimantan Timur","e": 10,"lo":116.87080,"la": -1.26611},{"n":"Tualang","j":"Pos Hujan Kerjasama","p":"Riau","e": 37,"lo":101.81670,"la": 0.98330},{"n":"Satrian/Kanigoro","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 168,"lo":112.22030,"la": -8.14472},{"n":"Sp. Mamplam","j":"Pos Hujan Kerjasama","p":"Nanggroe Aceh Darussalam","e":null,"lo": 96.44000,"la": 5.21000},{"n":"Pangkalan Lesung","j":"Pos Hujan Kerjasama","p":"Riau","e":null,"lo":102.11920,"la": -0.02884},{"n":"Musi Landas","j":"Pos Hujan Kerjasama","p":"Sumatera Selatan","e": 34,"lo":104.61340,"la": -2.91678},{"n":"Sei Balei","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.18000,"la": 3.11000},{"n":"Pojok","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 259,"lo":112.20780,"la": -8.06944},{"n":"Kemantren/Jabung","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 530,"lo":112.75190,"la": -7.94639},{"n":"Sri Gunung","j":"Pos Hujan Kerjasama","p":"Sumatera Selatan","e": 13,"lo":104.08600,"la": -2.58656},{"n":"Patilangio","j":"Pos Hujan Kerjasama","p":"Gorontalo","e":null,"lo":121.86000,"la": 0.51000},{"n":"Gembungan/Slemanan","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 195,"lo":112.09970,"la": -8.00194},{"n":"Kappang","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e": 321,"lo":119.75220,"la": -5.01417},{"n":"Kedungkamal","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.92060,"la": -7.79101},{"n":"Tangunan","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 70,"lo":112.46420,"la": -7.54306},{"n":"Sungai Apit","j":"Pos Hujan Kerjasama","p":"Riau","e": 29,"lo":102.13330,"la": 0.75000},{"n":"Bpp Ngadirejo","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":110.06100,"la": -7.23600},{"n":"Pakuan Ratu","j":"Pos Hujan Kerjasama","p":"Lampung","e":null,"lo":104.72843,"la": -4.41624},{"n":"Singkawang Timur","j":"Pos Hujan Kerjasama","p":"Kalimantan Barat","e": 3,"lo":109.02480,"la": 0.88422},{"n":"Amahai","j":"Pos Hujan Kerjasama","p":"Maluku","e":null,"lo":128.94000,"la": -3.33000},{"n":"Tongoa","j":"Pos Hujan Kerjasama","p":"Sulawesi Tengah","e":null,"lo":120.17100,"la": -1.21870},{"n":"Panongan","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 41,"lo":108.25000,"la": -6.73333},{"n":"Ngelak","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 799,"lo":111.12230,"la": -7.66414},{"n":"Pos Uptd Saumlaki","j":"Pos Hujan Kerjasama","p":"Maluku","e": 8,"lo":131.31000,"la": -7.97820},{"n":"Tegorejo","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 32,"lo":110.14870,"la": -6.97747},{"n":"Waru","j":"Pos Hujan Kerjasama","p":"Kalimantan Timur","e": 9,"lo":116.61610,"la": -1.38910},{"n":"Sawahan","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 569,"lo":111.77000,"la": -7.72389},{"n":"Stageof Winangun","j":"Pos Hujan Kerjasama","p":"Sulawesi Utara","e": 124,"lo":124.84000,"la": 1.45000},{"n":"Sidoklumpuk/Sidoarjo","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 56,"lo":112.72060,"la": -7.44611},{"n":"Kedungjati 1","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":110.63370,"la": -7.15889},{"n":"Bpp Tanete Rilau","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e": 9,"lo":119.60810,"la": -4.48056},{"n":"Gebangan Slt","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":110.05800,"la": -7.03600},{"n":"Srimadono Smpk","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 26,"lo":109.78350,"la": -7.71906},{"n":"Telaga Tawang","j":"Pos Hujan Kerjasama","p":"Bali","e": 291,"lo":115.46000,"la": -8.46000},{"n":"Tungkal Ilir","j":"Pos Hujan Kerjasama","p":"Jambi","e": 14,"lo":103.46810,"la": -1.26283},{"n":"Pulau Malan","j":"Pos Hujan Kerjasama","p":"Kalimantan Tengah","e":null,"lo":113.11289,"la": -7.73718},{"n":"Boja","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e": 316,"lo":110.27090,"la": -7.10379},{"n":"Parung Kuda","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e":null,"lo":106.76670,"la": -6.85000},{"n":"Pringgarata","j":"Pos Hujan Kerjasama","p":"Nusa Tenggara Barat","e": 5,"lo":116.25000,"la": -8.62000},{"n":"Maligas","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.36300,"la": 3.03800},{"n":"Cigeulis","j":"Pos Hujan Kerjasama","p":"Banten","e":null,"lo":105.64000,"la": -6.55000},{"n":"Campalagoe/ Bonto Jaya","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e": 256,"lo":119.87440,"la": -5.53417},{"n":"Boyolangu","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 135,"lo":111.89560,"la": -8.11056},{"n":"Turangi Lama","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 98.28000,"la": 3.45000},{"n":"Tiworo Kepulauan3","j":"Pos Hujan Kerjasama","p":"Sulawesi Tenggara","e":null,"lo":122.43300,"la": -4.77249},{"n":"Kali Orang","j":"Pos Hujan Kerjasama","p":"Kalimantan Timur","e":null,"lo":116.98750,"la": 0.99971},{"n":"Nanga Mau","j":"Pos Hujan Kerjasama","p":"Kalimantan Barat","e": 160,"lo":113.55000,"la": -6.94000},{"n":"Balongjeruk","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 95,"lo":112.19030,"la": -7.67222},{"n":"Curah Malang","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 51,"lo":113.56720,"la": -8.24139},{"n":"Sukajadi","j":"Pos Hujan Kerjasama","p":"Banten","e":null,"lo":106.22960,"la": -6.18920},{"n":"Bunga Melur","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e":1050,"lo":106.97470,"la": -7.04762},{"n":"Bulu Cenrana/Pituriawa","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e":null,"lo":119.95640,"la": -3.82366},{"n":"Sorkam","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 98.58000,"la": 1.90000},{"n":"Gembo","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.76340,"la": -7.39702},{"n":"Oro-Oro Pule","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 84,"lo":112.83810,"la": -7.74417},{"n":"Sangata Utara","j":"Pos Hujan Kerjasama","p":"Kalimantan Timur","e": 65,"lo":117.05190,"la": 0.54022},{"n":"Pintu Air Cideng","j":"Pos Hujan Kerjasama","p":"DKI Jakarta","e": 21,"lo":106.80670,"la": -6.17360},{"n":"Boto/Botogerdu","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 250,"lo":113.11360,"la": -7.84833},{"n":"Petungasri/Kasri","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 212,"lo":112.68810,"la": -7.65167},{"n":"Cambai","j":"Pos Hujan Kerjasama","p":"Kep. Bangka Belitung","e":null,"lo":106.15640,"la": -2.24583},{"n":"Sememu","j":"Pos Hujan Kerjasama","p":"Jawa Timur","e": 171,"lo":113.13250,"la": -8.19750},{"n":"Ktr. Kel. Kairagi Ii","j":"Pos Hujan Kerjasama","p":"Sulawesi Utara","e": 67,"lo":124.90000,"la": 1.50000},{"n":"Kalipentung/ Tanjungtirto","j":"Pos Hujan Kerjasama","p":"DI Yogyakarta","e": 137,"lo":110.45850,"la": -7.78681},{"n":"Pagar Jati","j":"Pos Hujan Kerjasama","p":"Bengkulu","e": 136,"lo":102.40220,"la": -3.63610},{"n":"Rejosari 2","j":"Pos Hujan Kerjasama","p":"Lampung","e":null,"lo":105.16167,"la": -4.30111},{"n":"Bontomatene","j":"Pos Hujan Kerjasama","p":"Sulawesi Selatan","e": 94,"lo":119.77500,"la": -5.61444},{"n":"Blahkiuh","j":"Pos Hujan Kerjasama","p":"Bali","e": 193,"lo":115.21000,"la": -8.51000},{"n":"Cipero","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.30800,"la": -6.98782},{"n":"Lebak Wangi","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e": 23,"lo":106.78000,"la": -6.13000},{"n":"Padalarang","j":"Pos Hujan Kerjasama","p":"Jawa Barat","e":null,"lo":107.47735,"la": -6.85347},{"n":"Kd Labuhan Uki","j":"Pos Hujan Kerjasama","p":"Sulawesi Utara","e": 6,"lo":123.94500,"la": 0.86139},{"n":"Sumurpanggang","j":"Pos Hujan Kerjasama","p":"Jawa Tengah","e":null,"lo":109.10430,"la": -6.87830},{"n":"Mompang","j":"Pos Hujan Kerjasama","p":"Sumatera Utara","e":null,"lo": 99.59400,"la": 0.84600},{"n":"AWS Krui","j":"aaws","p":"Lampung","e":null,"lo":103.93021,"la": -5.12924},{"n":"ARG Panti","j":"aaws","p":"Jawa Timur","e":null,"lo":113.63710,"la": -8.14961},{"n":"AAWS Rembang","j":"aaws","p":"Jawa Tengah","e":null,"lo":111.33484,"la": -6.70188},{"n":"ARG Pandeglang","j":"aaws","p":"Banten","e":null,"lo":106.10207,"la": -6.30380},{"n":"ARG Sigaluh","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.75300,"la": -7.39200},{"n":"AWS Kemayoran","j":"aaws","p":"DKI Jakarta","e":null,"lo":106.85290,"la": -6.13343},{"n":"ARG Sampang Madura","j":"aaws","p":"Jawa Timur","e":null,"lo":113.47667,"la": -6.89578},{"n":"ARG Kintap","j":"aaws","p":"Kalimantan Selatan","e":null,"lo":115.28959,"la": -3.86192},{"n":"ARG Kedungombo","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.83634,"la": -7.24037},{"n":"ARG Lebak Bulus","j":"aaws","p":"DKI Jakarta","e":null,"lo":106.77737,"la": -6.30417},{"n":"AWS Kulon Progo","j":"aaws","p":"DI Yogyakarta","e":null,"lo":110.12022,"la": -7.89177},{"n":"ARG Sedinginan","j":"aaws","p":"Riau","e":null,"lo":101.27300,"la": 1.34210},{"n":"AWS Stamet Paloh Sambas","j":"aaws","p":"Kalimantan Barat","e":null,"lo":109.32210,"la": 1.73740},{"n":"ARG Tomang","j":"aaws","p":"DKI Jakarta","e":null,"lo":106.78000,"la": -6.16670},{"n":"AAWS Bojongmangu","j":"aaws","p":"Jawa Barat","e":null,"lo":107.19200,"la": -6.43187},{"n":"ARG OKU","j":"aaws","p":"Sumatera Selatan","e":null,"lo":103.97150,"la": -4.76706},{"n":"ARG Batu","j":"aaws","p":"Jawa Timur","e":null,"lo":112.52310,"la": -7.84123},{"n":"AAWS Sruweng Kebumen","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.60476,"la": -7.66142},{"n":"ARG Buleleng","j":"aaws","p":"Bali","e":null,"lo":115.10050,"la": -8.13499},{"n":"AWS Lamongan","j":"aaws","p":"Jawa Timur","e":null,"lo":112.32972,"la": -7.09389},{"n":"AWS Juwana Pati","j":"aaws","p":"Jawa Tengah","e":null,"lo":111.14600,"la": -6.72100},{"n":"AWS Sungai Tabuk","j":"aaws","p":"Kalimantan Selatan","e":null,"lo":114.68182,"la": -3.32653},{"n":"AWS Jagorawi Bogor","j":"aaws","p":"Jawa Barat","e":null,"lo":106.52164,"la": -6.27635},{"n":"AAWS Tuban","j":"aaws","p":"Jawa Timur","e":null,"lo":112.01381,"la": -6.88317},{"n":"AWS Gorontalo","j":"aaws","p":"Gorontalo","e":null,"lo":122.85260,"la": 0.63843},{"n":"AWS Maritim Panjang Lampung","j":"aaws","p":"Lampung","e":null,"lo":105.31050,"la": -5.45553},{"n":"AWS Stamet Tanjung Pinang","j":"aaws","p":"Kep. Riau","e":null,"lo":104.52600,"la": 0.91840},{"n":"ARG Pasir Pangaraian","j":"aaws","p":"Riau","e":null,"lo":101.01000,"la": 0.19340},{"n":"ARG Solok","j":"aaws","p":"Sumatera Barat","e":null,"lo":100.62778,"la": -0.94472},{"n":"ARG Pekutatan","j":"aaws","p":"Bali","e":null,"lo":114.83830,"la": -8.40194},{"n":"AAWS Pondok Salam (AWS+)","j":"aaws","p":"Jawa Barat","e":null,"lo":107.49780,"la": -6.61872},{"n":"AAWS Serang Curug","j":"aaws","p":"Banten","e":null,"lo":106.19020,"la": -6.17122},{"n":"AAWS Ciamis","j":"aaws","p":"Jawa Barat","e":null,"lo":108.36940,"la": -7.29875},{"n":"AWS Nangapinoh","j":"aaws","p":"Kalimantan Barat","e":null,"lo":111.47000,"la": 0.42000},{"n":"AWS Tebo","j":"aaws","p":"Jambi","e":null,"lo":102.17555,"la": -1.38166},{"n":"AWS Kuningan","j":"aaws","p":"Jawa Barat","e":null,"lo":108.45680,"la": -6.99970},{"n":"AWS Cisolok Sukabumi","j":"aaws","p":"Jawa Barat","e":null,"lo":106.47630,"la": -6.95950},{"n":"ARG Karang Nunggal","j":"aaws","p":"Jawa Barat","e":null,"lo":108.14000,"la": -7.62530},{"n":"AAWS Purwodadi","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.91430,"la": -7.10400},{"n":"AWS Staklim Sampali","j":"aaws","p":"Sumatera Utara","e":null,"lo": 98.78000,"la": 3.61600},{"n":"AWS Koba","j":"aaws","p":"Kep. Bangka Belitung","e":null,"lo":106.41670,"la": -2.52330},{"n":"ARG SMPK Lahat","j":"aaws","p":"Sumatera Selatan","e":null,"lo":103.43900,"la": -3.98277},{"n":"AAWS Jember","j":"aaws","p":"Jawa Timur","e":null,"lo":113.44444,"la": -8.20750},{"n":"ARG SMPK Pemalang","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.46130,"la": -6.89682},{"n":"ARG Kandis","j":"aaws","p":"Riau","e":null,"lo":101.11519,"la": 1.02854},{"n":"AWS Staklim Pondok Betung","j":"aaws","p":"Banten","e":null,"lo":106.76000,"la": -6.25000},{"n":"AAWS Waikabubak (AWS+)","j":"aaws","p":"Nusa Tenggara Timur","e":null,"lo":119.39120,"la": -9.62411},{"n":"ARG SMPK Bunga Maya","j":"aaws","p":"Riau","e":null,"lo":102.11670,"la": 0.78330},{"n":"ARG SMPK Tanah Datar","j":"aaws","p":"Sumatera Barat","e":null,"lo":100.56778,"la": -0.47444},{"n":"AWS Selagai lingga","j":"aaws","p":"Lampung","e":null,"lo":104.68037,"la": -5.10120},{"n":"ARG Cibaliung","j":"aaws","p":"Banten","e":null,"lo":106.01540,"la": -6.49350},{"n":"ARG Pronojiwo","j":"aaws","p":"Jawa Timur","e":null,"lo":113.00430,"la": -8.17200},{"n":"AWS Tamiang Hulu","j":"aaws","p":"Nanggroe Aceh Darussalam","e":null,"lo": 97.86441,"la": 4.27744},{"n":"AWS Stamet Banyuwangi","j":"aaws","p":"Jawa Timur","e":null,"lo":114.36944,"la": -8.21028},{"n":"ARG Cariu","j":"aaws","p":"Jawa Barat","e":null,"lo":107.14294,"la": -6.16028},{"n":"AWS Singkil","j":"aaws","p":"Sulawesi Utara","e":null,"lo":124.85389,"la": 1.50306},{"n":"ARG Cisalak","j":"aaws","p":"Banten","e":null,"lo":106.30059,"la": -6.37080},{"n":"AWS Stamet Branti","j":"aaws","p":"Lampung","e":null,"lo":105.17571,"la": -5.24253},{"n":"ARG Aceh","j":"aaws","p":"Nanggroe Aceh Darussalam","e":null,"lo": 97.78570,"la": 4.92426},{"n":"AAWS GAW Agam","j":"aaws","p":"Sumatera Barat","e":null,"lo":100.38222,"la": 0.25028},{"n":"ARG Sekotong","j":"aaws","p":"Nusa Tenggara Barat","e":null,"lo":116.07900,"la": -8.83769},{"n":"ARG SMPK Musi Rawas","j":"aaws","p":"Sumatera Selatan","e":null,"lo":102.92247,"la": -3.20283},{"n":"ARG Tuban","j":"aaws","p":"Jawa Timur","e":null,"lo":112.48361,"la": -6.90039},{"n":"AAWS Lape Sumbawa (AWS+)","j":"aaws","p":"Nusa Tenggara Barat","e":null,"lo":117.61720,"la": -8.62531},{"n":"ARG Tanjung Jabung Barat","j":"aaws","p":"Jambi","e":null,"lo":100.42669,"la": 0.84200},{"n":"ARG Waikabubak","j":"aaws","p":"Nusa Tenggara Timur","e":null,"lo":124.89250,"la": 9.10833},{"n":"ARG Waduk Mrica","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.61300,"la": -7.39100},{"n":"AWS Ranowulu Bitung","j":"aaws","p":"Sulawesi Utara","e":null,"lo":125.12389,"la": 1.46167},{"n":"ARG SMPK Tasikmalaya","j":"aaws","p":"Jawa Barat","e":null,"lo":108.20310,"la": -7.33082},{"n":"ARG Rendang","j":"aaws","p":"Bali","e":null,"lo":115.42020,"la": -8.41583},{"n":"ARG Manokwari","j":"aaws","p":"Papua Barat","e":null,"lo":133.72890,"la": -0.79186},{"n":"AWS Borobudur","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.21397,"la": -7.61412},{"n":"AWS Mojokerto","j":"aaws","p":"Jawa Timur","e":null,"lo":112.92000,"la": -7.65944},{"n":"AAWS Kandat Kediri (AWS+)","j":"aaws","p":"Jawa Timur","e":null,"lo":112.03361,"la": -7.93389},{"n":"ARG Siak","j":"aaws","p":"Riau","e":null,"lo":102.11100,"la": 1.11490},{"n":"ARG Ratahan","j":"aaws","p":"Sulawesi Utara","e":null,"lo":124.79028,"la": 1.02250},{"n":"ARG SMPK Bojong Picung","j":"aaws","p":"Jawa Barat","e":null,"lo":107.27380,"la": -6.83699},{"n":"ARG Cidaun","j":"aaws","p":"Jawa Barat","e":null,"lo":107.36083,"la": -7.49167},{"n":"ARG SMPK Jombang","j":"aaws","p":"Jawa Timur","e":null,"lo":112.23300,"la": -7.49361},{"n":"ARG Sorolangun","j":"aaws","p":"Jambi","e":null,"lo":102.92231,"la": -1.07486},{"n":"AWS Stamet Serang","j":"aaws","p":"Banten","e":null,"lo":106.13180,"la": -6.11127},{"n":"AAWS Kroya Cilacap","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.24522,"la": -7.59953},{"n":"AWS Stageof Karangkates","j":"aaws","p":"Jawa Timur","e":null,"lo":112.77194,"la": -8.15218},{"n":"ARG Alas Sumbawa","j":"aaws","p":"Nusa Tenggara Barat","e":null,"lo":116.99369,"la": -8.51358},{"n":"AWS Sorong","j":"aaws","p":"Papua Barat","e":null,"lo":131.29030,"la": -0.89167},{"n":"AAWS Bantul","j":"aaws","p":"DI Yogyakarta","e":null,"lo":110.37470,"la": -7.72167},{"n":"AAWS Singingi Riau","j":"aaws","p":"Riau","e":null,"lo":101.48859,"la": -0.59824},{"n":"AWS Bamaang Hulu","j":"aaws","p":"Kalimantan Tengah","e":null,"lo":112.97500,"la": -2.50182},{"n":"ARG Poso","j":"aaws","p":"Sulawesi Tengah","e":null,"lo":120.90830,"la": -1.91720},{"n":"AAWS Gerokgak (AWS+)","j":"aaws","p":"Bali","e":null,"lo":114.68000,"la": -8.15000},{"n":"AAWS Oelbubuk","j":"aaws","p":"Nusa Tenggara Timur","e":null,"lo":124.26700,"la": -9.75900},{"n":"ARG Sumber Probolinggo","j":"aaws","p":"Jawa Timur","e":null,"lo":113.37889,"la": -7.78194},{"n":"AAWS Tabalong","j":"aaws","p":"Kalimantan Selatan","e":null,"lo":115.39008,"la": -2.13466},{"n":"AWS Kanigoro Blitar","j":"aaws","p":"Jawa Timur","e":null,"lo":112.22260,"la": -8.14288},{"n":"ARG Pinolosian","j":"aaws","p":"Sulawesi Utara","e":null,"lo":124.11750,"la": 0.39417},{"n":"ARG Tapanuli","j":"aaws","p":"Sumatera Utara","e":null,"lo": 99.22000,"la": 1.40000},{"n":"AWS Karanganyar","j":"aaws","p":"Jawa Tengah","e":null,"lo":111.06700,"la": -7.61500},{"n":"ARG Bengkalis","j":"aaws","p":"Riau","e":null,"lo":102.08400,"la": 1.29580},{"n":"ARG Tulis","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.79800,"la": -7.32500},{"n":"AWS Pekalongan","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.58700,"la": -7.10400},{"n":"AWS Stamet Cilacap","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.01480,"la": -7.71860},{"n":"AAWS Sukodono (AWS+)","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.96620,"la": -7.32750},{"n":"AAWS Penajam Paser Utara","j":"aaws","p":"Kalimantan Timur","e":null,"lo":116.65650,"la": -1.36163},{"n":"AWS Tiris Probolinggo","j":"aaws","p":"Jawa Timur","e":null,"lo":113.40111,"la": -7.96306},{"n":"ARG Nusa Penida","j":"aaws","p":"Bali","e":null,"lo":115.49940,"la": -8.67455},{"n":"ARG Manggarai","j":"aaws","p":"DKI Jakarta","e":null,"lo":106.84870,"la": -6.20748},{"n":"ARG SMPK Sragen","j":"aaws","p":"Jawa Tengah","e":null,"lo":111.04380,"la": -7.52544},{"n":"AWS Sintang","j":"aaws","p":"Kalimantan Barat","e":null,"lo":111.47000,"la": 0.06000},{"n":"AAWS Rokan Hilir","j":"aaws","p":"Riau","e":null,"lo":101.02467,"la": 1.85911},{"n":"AAWS Tabanan","j":"aaws","p":"Bali","e":null,"lo":115.13917,"la": -8.46083},{"n":"ARG Baturiti Tabanan","j":"aaws","p":"Bali","e":null,"lo":115.16000,"la": -8.26150},{"n":"AWS Staklim Banjarbaru","j":"aaws","p":"Kalimantan Selatan","e":null,"lo":114.84084,"la": -3.46225},{"n":"AAWS Kampar Kiri Riau","j":"aaws","p":"Riau","e":null,"lo":100.25300,"la": 0.34170},{"n":"ARG Kangean","j":"aaws","p":"Jawa Timur","e":null,"lo":115.47111,"la": -6.85867},{"n":"AWS Tambilahan","j":"aaws","p":"Riau","e":null,"lo":103.13473,"la": -0.28358},{"n":"ARG Karanggede","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.64800,"la": -7.36200},{"n":"ARG Ciomas","j":"aaws","p":"Banten","e":null,"lo":106.25109,"la": -6.20400},{"n":"ARG Majenang","j":"aaws","p":"Jawa Tengah","e":null,"lo":108.75810,"la": -7.29584},{"n":"AWS Putussibau","j":"aaws","p":"Kalimantan Barat","e":null,"lo":112.93470,"la": 0.83895},{"n":"AAWS Rappang","j":"aaws","p":"Sulawesi Selatan","e":null,"lo":119.80465,"la": -3.88929},{"n":"ARG Kolaka","j":"aaws","p":"Sulawesi Tenggara","e":null,"lo":121.67747,"la": -4.11241},{"n":"AWS Cepu Blora","j":"aaws","p":"Jawa Tengah","e":null,"lo":111.57599,"la": -7.17012},{"n":"AAWS Banyumas","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.30510,"la": -7.52870},{"n":"ARG Muaro Jambi","j":"aaws","p":"Jambi","e":null,"lo":103.47430,"la": -1.98370},{"n":"ARG Muara Bungo","j":"aaws","p":"Jambi","e":null,"lo":101.88840,"la": -1.60930},{"n":"AAWS Banyuwangi","j":"aaws","p":"Jawa Timur","e":null,"lo":114.14445,"la": -8.37910},{"n":"AWS Stamet Citeko","j":"aaws","p":"Jawa Barat","e":null,"lo":106.93510,"la": -6.69796},{"n":"AWS Stamet Bima","j":"aaws","p":"Nusa Tenggara Barat","e":null,"lo":118.67940,"la": -8.51661},{"n":"ARG SMPK Singamerta","j":"aaws","p":"Banten","e":null,"lo":106.24058,"la": -6.11928},{"n":"AWS Staklim Maros","j":"aaws","p":"Sulawesi Selatan","e":null,"lo":119.57879,"la": -4.94593},{"n":"AWS Maritim Merak","j":"aaws","p":"Banten","e":null,"lo":105.98530,"la": -5.91889},{"n":"ARG Minasatene","j":"aaws","p":"Sulawesi Selatan","e":null,"lo":119.57420,"la": -4.83161},{"n":"ARG Mojokerto","j":"aaws","p":"Jawa Timur","e":null,"lo":112.42778,"la": -7.59139},{"n":"ARG Betun","j":"aaws","p":"Nusa Tenggara Timur","e":null,"lo":124.90750,"la": 9.56500},{"n":"ARG Pulosari","j":"aaws","p":"Jawa Tengah","e":null,"lo":109.27074,"la": -7.18731},{"n":"AAWS Sukoharjo","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.71680,"la": -7.57697},{"n":"ARG Gandus","j":"aaws","p":"Sumatera Selatan","e":null,"lo":104.72190,"la": -3.01480},{"n":"AWS Galela","j":"aaws","p":"Maluku Utara","e":null,"lo":127.83333,"la": 1.81667},{"n":"AWS Mayang Jember","j":"aaws","p":"Jawa Timur","e":null,"lo":114.33778,"la": -8.17693},{"n":"AWS Prancak Jembrana","j":"aaws","p":"Bali","e":null,"lo":114.64000,"la": -8.40000},{"n":"AWS Bondowoso","j":"aaws","p":"Jawa Timur","e":null,"lo":114.26556,"la": -7.85608},{"n":"ARG Saptosari","j":"aaws","p":"DI Yogyakarta","e":null,"lo":110.51010,"la": -8.04752},{"n":"ARG Randublatung","j":"aaws","p":"Jawa Tengah","e":null,"lo":111.41400,"la": -7.19400},{"n":"AWS Murung","j":"aaws","p":"Kalimantan Tengah","e":null,"lo":114.75280,"la": 0.50550},{"n":"AAWS Lore Piore (AWS+)","j":"aaws","p":"Sulawesi Tengah","e":null,"lo":120.19000,"la": 1.31000},{"n":"AWS Labuha","j":"aaws","p":"Maluku Utara","e":null,"lo":127.50080,"la": -0.63796},{"n":"AWS Stageof Ternate","j":"aaws","p":"Maluku Utara","e":null,"lo":127.36630,"la": 0.76580},{"n":"AWS Patean Kendal","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.09000,"la": -7.09100},{"n":"AWS Tanggul Jember","j":"aaws","p":"Jawa Timur","e":null,"lo":113.75806,"la": -8.16300},{"n":"AAWS Selogiri (AWS+)","j":"aaws","p":"Jawa Tengah","e":null,"lo":110.88970,"la": -7.78156},{"n":"Stasiun Meteorologi Maritim Lampung","j":"UPT","p":"Lampung","e": 1,"lo":105.33000,"la": -5.47000},{"n":"Stasiun Meteorologi Binaka","j":"UPT","p":"Sumatera Utara","e": 175,"lo": 97.71000,"la": 1.16502},{"n":"Stasiun Meteorologi Gamar Malamo","j":"UPT","p":"Maluku Utara","e": 29,"lo":127.50000,"la": 1.49000},{"n":"Stasiun Meteorologi Hasanuddin","j":"UPT","p":"Sulawesi Selatan","e": 14,"lo":119.55000,"la": -5.07000},{"n":"Stasiun Meteorologi Rahadi Oesman","j":"UPT","p":"Kalimantan Barat","e": 9,"lo":109.97000,"la": -1.80000},{"n":"Stasiun Meteorologi Mararena","j":"UPT","p":"Papua","e": 3,"lo":138.75000,"la": -1.85000},{"n":"Stasiun Meteorologi Maritim Bitung","j":"UPT","p":"Sulawesi Utara","e": 3,"lo":125.18000,"la": 1.44306},{"n":"Stasiun Geofisika Tuntungan","j":"UPT","p":"Sumatera Utara","e": 86,"lo": 98.56000,"la": 3.50100},{"n":"Stasiun Meteorologi Sentani","j":"UPT","p":"Papua","e": 96,"lo":140.48000,"la": -2.57000},{"n":"Stasiun Geofisika Parapat","j":"UPT","p":"Sumatera Utara","e":1061,"lo": 98.92000,"la": 2.69395},{"n":"Stasiun Meteorologi Maritim Perak II","j":"UPT","p":"Jawa Timur","e": 3,"lo":112.74000,"la": -7.20937},{"n":"Stasiun Meteorologi Mathilda Batlayeri","j":"UPT","p":"Maluku","e": 24,"lo":131.30000,"la": -7.98000},{"n":"Stasiun Meteorologi Frans Kaisiepo","j":"UPT","p":"Papua","e": 3,"lo":136.10000,"la": -1.19069},{"n":"Stasiun Meteorologi Sultan Muhammad Kaharuddin","j":"UPT","p":"Nusa Tenggara Barat","e": 4,"lo":117.43000,"la": -8.52000},{"n":"Stasiun Geofisika Jakarta","j":"UPT","p":"DKI Jakarta","e": 4,"lo":106.84000,"la": -6.15568},{"n":"Stasiun Meteorologi Yuvai Semaring","j":"UPT","p":"Kalimantan Timur","e":1090,"lo":115.68000,"la": 3.86000},{"n":"Stasiun Meteorologi Tjut Nyak Dien Meulaboh","j":"UPT","p":"Nanggroe Aceh Darussalam","e": 3,"lo": 96.25000,"la": 4.04898},{"n":"Stasiun Meteorologi Malikussaleh","j":"UPT","p":"Nanggroe Aceh Darussalam","e": 28,"lo": 96.93000,"la": 5.22800},{"n":"Balai Besar Meteorologi, Klimatologi, dan Geofisika Wilayah I","j":"UPT","p":"Sumatera Utara","e":null,"lo": 98.64000,"la": 3.53970},{"n":"Stasiun Meteorologi Syamsudin Noor","j":"UPT","p":"Kalimantan Selatan","e": 32,"lo":114.76000,"la": -3.45000},{"n":"Stasiun Meteorologi David Constantijn Saudale","j":"UPT","p":"Nusa Tenggara Timur","e": 174,"lo":123.07000,"la":-10.73000},{"n":"Stasiun Meteorologi Rendani","j":"UPT","p":"Papua Barat","e": 3,"lo":134.05000,"la": -0.88000},{"n":"Stasiun Geofisika Tangerang","j":"UPT","p":"Banten","e": 14,"lo":106.38000,"la": -6.10000},{"n":"Stasiun Meteorologi Frans Sales Lega","j":"UPT","p":"Nusa Tenggara Timur","e":1070,"lo":120.45000,"la": -8.63000},{"n":"Stasiun Meteorologi Sanggu","j":"UPT","p":"Kalimantan Tengah","e": 37,"lo":114.90000,"la": -1.67000},{"n":"Stasiun Geofisika Mataie","j":"UPT","p":"Nanggroe Aceh Darussalam","e": 12,"lo": 95.49000,"la": 5.46610},{"n":"Stasiun Meteorologi Kasiguncu","j":"UPT","p":"Sulawesi Tengah","e": 15,"lo":120.73000,"la": -1.38000},{"n":"Stasiun Klimatologi Maros","j":"UPT","p":"Sulawesi Selatan","e": 11,"lo":119.55000,"la": -4.90000},{"n":"Stasiun Geofisika Silaing Bawah","j":"UPT","p":"Sumatera Barat","e": 773,"lo":100.40000,"la": 0.45700},{"n":"Stasiun Meteorologi Maritim","j":"UPT","p":"Sumatera Barat","e": 2,"lo":100.37000,"la": -0.99600},{"n":"Stasiun Geofisika Waingapu","j":"UPT","p":"Nusa Tenggara Timur","e": 13,"lo":120.30000,"la": -9.90000},{"n":"Stasiun Meteorologi H. Asan","j":"UPT","p":"Kalimantan Tengah","e": 3,"lo":112.93000,"la": -2.55000},{"n":"Stasiun Meteorologi Cut Bau Maimun Saleh","j":"UPT","p":"Nanggroe Aceh Darussalam","e": 126,"lo": 95.35000,"la": 5.86979},{"n":"Stasiun Meteorologi Sam Ratulangi","j":"UPT","p":"Sulawesi Utara","e": 80,"lo":124.92000,"la": 1.53000},{"n":"Stasiun Meteorologi Juwata","j":"UPT","p":"Kalimantan Timur","e": 6,"lo":117.57000,"la": 3.33000},{"n":"Stasiun Meteorologi Sudjarwo Tjondro Negoro","j":"UPT","p":"Papua","e": 8,"lo":136.23000,"la": -1.87000},{"n":"Stasiun Klimatologi Kenten","j":"UPT","p":"Sumatera Selatan","e": 8,"lo":104.70000,"la": -3.00000},{"n":"Stasiun Geofisika Karang Panjang","j":"UPT","p":"Maluku","e": 83,"lo":128.19000,"la": -3.69000},{"n":"Stasiun Meteorologi Komodo","j":"UPT","p":"Nusa Tenggara Timur","e": 67,"lo":119.89000,"la": -8.49000},{"n":"Stasiun Meteorologi Geser","j":"UPT","p":"Maluku","e": 2,"lo":130.88000,"la": -3.88130},{"n":"Stasiun Klimatologi Semarang","j":"UPT","p":"Jawa Tengah","e": 227,"lo":110.42000,"la": -6.98000},{"n":"Stasiun Meteorologi Budiarto","j":"UPT","p":"Banten","e": 46,"lo":106.57000,"la": -6.28700},{"n":"Stasiun Meteorologi Soekarno Hatta","j":"UPT","p":"Banten","e": 8,"lo":106.65000,"la": -6.12000},{"n":"Stasiun Meteorologi Maritim Tanjung Priok","j":"UPT","p":"DKI Jakarta","e": 2,"lo":106.88000,"la": -6.10781},{"n":"Stasiun Meteorologi Sultan Mahmud Badaruddin II","j":"UPT","p":"Sumatera Selatan","e": 11,"lo":104.70000,"la": -2.90000},{"n":"Stasiun Meteorologi Maritim","j":"UPT","p":"Sulawesi Tenggara","e": 2,"lo":122.60000,"la": -3.95000},{"n":"Stasiun Geofisika Saumlaki","j":"UPT","p":"Maluku","e": 26,"lo":131.30000,"la": -7.98000},{"n":"Stasiun Meteorologi Fransiskus Xaverius Seda","j":"UPT","p":"Nusa Tenggara Timur","e": 4,"lo":122.25000,"la": -8.63000},{"n":"Stasiun Klimatologi Pondok Betung","j":"UPT","p":"Banten","e": 26,"lo":106.75000,"la": -6.26107},{"n":"Stasiun Meteorologi Aek Godang","j":"UPT","p":"Sumatera Utara","e": 281,"lo": 99.45000,"la": 1.55000},{"n":"Stasiun Geofisika Sanglah","j":"UPT","p":"Bali","e": 15,"lo":115.21000,"la": -8.67689},{"n":"Stasiun Meteorologi Umbu Mehang Kunda","j":"UPT","p":"Nusa Tenggara Timur","e": 52,"lo":120.33000,"la": -9.67000},{"n":"Stasiun Meteorologi Sangkapura","j":"UPT","p":"Jawa Timur","e":null,"lo":112.63000,"la": -5.85000},{"n":"Stasiun Meteorologi Bandara Internasional Lombok","j":"UPT","p":"Nusa Tenggara Barat","e": 16,"lo":116.11000,"la": -8.55000},{"n":"Stasiun Meteorologi Seigun","j":"UPT","p":"Papua Barat","e":null,"lo":131.26000,"la": -0.87726},{"n":"Stasiun Meteorologi Tegal","j":"UPT","p":"Jawa Tengah","e": 3,"lo":109.15000,"la": -6.85000},{"n":"Stasiun Meteorologi Supadio","j":"UPT","p":"Kalimantan Barat","e": 3,"lo":109.45000,"la": -0.14206},{"n":"Stasiun Meteorologi Sepinggan","j":"UPT","p":"Kalimantan Timur","e": 3,"lo":116.90000,"la": -1.26000},{"n":"Stasiun Meteorologi Ngurah Rai","j":"UPT","p":"Bali","e": 4,"lo":115.17000,"la": -8.74916},{"n":"Stasiun Meteorologi Djalaluddin","j":"UPT","p":"Gorontalo","e": 18,"lo":122.83000,"la": 0.63300},{"n":"Stasiun Meteorologi Sultan Thaha","j":"UPT","p":"Jambi","e": 26,"lo":103.64000,"la": -1.63368},{"n":"Stasiun Geofisika Bandung","j":"UPT","p":"Jawa Barat","e": 829,"lo":107.60000,"la": -6.88000},{"n":"Stasiun Klimatologi Sicincin","j":"UPT","p":"Sumatera Barat","e": 137,"lo":100.71000,"la": -0.57500},{"n":"Stasiun Meteorologi Enarotali","j":"UPT","p":"Papua","e":1774,"lo":136.38000,"la": -3.92688},{"n":"Stasiun Geofisika Kepahiyang","j":"UPT","p":"Bengkulu","e": 517,"lo":102.59000,"la": -3.63000},{"n":"Stasiun Klimatologi Banjar Baru","j":"UPT","p":"Kalimantan Selatan","e": 55,"lo":114.84000,"la": -3.46225},{"n":"Stasiun Meteorologi Sultan Muhammad Salahuddin","j":"UPT","p":"Nusa Tenggara Barat","e": 3,"lo":118.69000,"la": -8.54323},{"n":"Stasiun Meteorologi Hang Nadim","j":"UPT","p":"Kep. Riau","e": 28,"lo":104.12000,"la": 1.11700},{"n":"Stasiun Geofisika Tanjung Pandan","j":"UPT","p":"Kep. Bangka Belitung","e": 22,"lo":107.65000,"la": -2.75750},{"n":"Stasiun Meteorologi Tanjung Harapan","j":"UPT","p":"Kalimantan Timur","e": 3,"lo":117.22000,"la": 2.50000},{"n":"Stasiun Meteorologi F.L Tobing","j":"UPT","p":"Sumatera Utara","e": 10,"lo": 98.88000,"la": 1.55000},{"n":"Stasiun Meteorologi Pangsuma","j":"UPT","p":"Kalimantan Barat","e": 43,"lo":112.93000,"la": 0.84000},{"n":"Stasiun Geofisika Tual","j":"UPT","p":"Maluku","e": 22,"lo":132.75000,"la": -5.64000},{"n":"Stasiun Geofisika Balikpapan","j":"UPT","p":"Kalimantan Timur","e": 31,"lo":116.91463,"la": -1.25530},{"n":"Stasiun Meteorologi Moanamani","j":"UPT","p":"Papua","e": 3,"lo":135.52000,"la": -3.35210},{"n":"Stasiun Geofisika Banjarnegara","j":"UPT","p":"Jawa Tengah","e": 608,"lo":109.71000,"la": -7.31800},{"n":"Stasiun Geofisika Angkasapura","j":"UPT","p":"Papua","e": 400,"lo":140.41000,"la": -2.52000},{"n":"Stasiun Meteorologi Beringin","j":"UPT","p":"Kalimantan Tengah","e": 42,"lo":114.53000,"la": -0.56000},{"n":"Stasiun Meteorologi Andi Jemma","j":"UPT","p":"Sulawesi Selatan","e": 50,"lo":120.32000,"la": -2.55440},{"n":"Stasiun Meteorologi Sultan Iskandar Muda","j":"UPT","p":"Nanggroe Aceh Darussalam","e": 20,"lo": 95.42000,"la": 5.52100},{"n":"Stasiun Geofisika Kendari","j":"UPT","p":"Sulawesi Tenggara","e": 10,"lo":122.62000,"la": -3.96000},{"n":"Stasiun Meteorologi Tanah Merah","j":"UPT","p":"Papua","e": 97,"lo":140.31000,"la": -6.10000},{"n":"Stasiun Klimatologi Lasiana","j":"UPT","p":"Nusa Tenggara Timur","e": 19,"lo":123.60000,"la":-10.17000},{"n":"Stasiun Geofisika Sorong","j":"UPT","p":"Papua Barat","e": 64,"lo":131.26000,"la": -0.86000},{"n":"Stasiun Meteorologi Utarom","j":"UPT","p":"Papua Barat","e": 5,"lo":133.75000,"la": -3.67000},{"n":"Stasiun Klimatologi Sei Durian","j":"UPT","p":"Jambi","e": 34,"lo":103.49000,"la": -1.60000},{"n":"Stasiun Meteorologi Sangia Ni Bandera","j":"UPT","p":"Sulawesi Tenggara","e": 10,"lo":121.60000,"la": -4.17500},{"n":"Stasiun Meteorologi Pongtiku","j":"UPT","p":"Sulawesi Selatan","e": 879,"lo":119.82000,"la": -3.04250},{"n":"Stasiun Meteorologi Paloh","j":"UPT","p":"Kalimantan Barat","e": 15,"lo":109.30000,"la": 1.74000},{"n":"Balai Besar Meteorologi, Klimatologi, dan Geofisika Wilayah V","j":"UPT","p":"Papua","e":null,"lo":140.68000,"la": -2.56700},{"n":"Stasiun Meteorologi Cilacap","j":"UPT","p":"Jawa Tengah","e": 20,"lo":109.02000,"la": -7.73000},{"n":"Stasiun Meteorologi Dabo","j":"UPT","p":"Kep. Riau","e": 29,"lo":104.58000,"la": -0.48000},{"n":"Stasiun Meteorologi Citeko","j":"UPT","p":"Jawa Barat","e": 920,"lo":106.85000,"la": -6.70000},{"n":"Stasiun Meteorologi Japura","j":"UPT","p":"Riau","e": 19,"lo":102.32000,"la": 0.33000},{"n":"Stasiun Meteorologi Susilo","j":"UPT","p":"Kalimantan Barat","e": 31,"lo":111.47000,"la": 0.06000},{"n":"Stasiun Meteorologi Mozez Kilangin","j":"UPT","p":"Papua","e": 30,"lo":136.43000,"la": -4.72000},{"n":"Stasiun Meteorologi Raja Haji Abdullah Tanjung Balai Karimun","j":"UPT","p":"Kep. Riau","e": 1,"lo":103.38000,"la": 1.03000},{"n":"Stasiun Meteorologi Dumatubun","j":"UPT","p":"Maluku","e": 16,"lo":132.73000,"la": -5.66000},{"n":"Stasiun Meteorologi Oesman Sadik","j":"UPT","p":"Maluku Utara","e": 14,"lo":127.50000,"la": -0.63784},{"n":"Stasiun Meteorologi H. Asan Hananjoedin","j":"UPT","p":"Kep. Bangka Belitung","e": 47,"lo":107.75000,"la": -2.75000},{"n":"Stasiun Klimatologi Darmaga","j":"UPT","p":"Jawa Barat","e": 207,"lo":106.75000,"la": -6.50000},{"n":"Stasiun Geofisika Palu","j":"UPT","p":"Sulawesi Tengah","e": 149,"lo":119.84000,"la": -0.90519},{"n":"Stasiun Klimatologi Masgar","j":"UPT","p":"Lampung","e": 71,"lo":105.18000,"la": -5.17236},{"n":"Stasiun Meteorologi Naha","j":"UPT","p":"Sulawesi Utara","e": 6,"lo":125.51000,"la": 3.68000},{"n":"Stasiun Meteorologi Eltari","j":"UPT","p":"Nusa Tenggara Timur","e": 102,"lo":123.40000,"la":-10.10000},{"n":"Stasiun Meteorologi Jatiwangi","j":"UPT","p":"Jawa Barat","e": 85,"lo":108.27000,"la": -6.75000},{"n":"Pos Meteorologi Penggung","j":"UPT","p":"Jawa Barat","e": 23,"lo":108.33205,"la": -6.45190},{"n":"Stasiun Meteorologi Tarempa","j":"UPT","p":"Kep. Riau","e": 2,"lo":106.25000,"la": 3.20000},{"n":"Stasiun Geofisika Gowa","j":"UPT","p":"Sulawesi Selatan","e": 28,"lo":119.50000,"la": -5.20000},{"n":"Stasiun Klimatologi Negara","j":"UPT","p":"Bali","e": 24,"lo":114.62000,"la": -8.34000},{"n":"Stasiun Meteorologi Kemayoran","j":"UPT","p":"DKI Jakarta","e": 4,"lo":106.84000,"la": -6.15559},{"n":"Stasiun Klimatologi Indrapuri","j":"UPT","p":"Nanggroe Aceh Darussalam","e": 51,"lo": 95.46000,"la": 5.40000},{"n":"Stasiun Geofisika Winangun","j":"UPT","p":"Sulawesi Utara","e": 128,"lo":124.84000,"la": 1.44390},{"n":"Stasiun Geofisika Kota Bumi","j":"UPT","p":"Lampung","e": 60,"lo":104.87000,"la": -4.83631},{"n":"Stasiun Meteorologi Kijang","j":"UPT","p":"Kep. Riau","e": 18,"lo":104.53000,"la": 0.91816},{"n":"Stasiun Meteorologi Mopah","j":"UPT","p":"Papua","e":null,"lo":140.38000,"la": -8.47000},{"n":"Stasiun Meteorologi Perak I","j":"UPT","p":"Jawa Timur","e": 3,"lo":112.46000,"la": -7.13000},{"n":"Stasiun Meteorologi Majene","j":"UPT","p":"Sulawesi Barat","e": 29,"lo":119.20000,"la": -3.56194},{"n":"Stasiun Geofisika Gunung Sitoli","j":"UPT","p":"Sumatera Utara","e": 175,"lo": 97.58000,"la": 1.30000},{"n":"Stasiun Meteorologi Sultan Syarif Kasim II","j":"UPT","p":"Riau","e": 27,"lo":101.43000,"la": 0.46700},{"n":"Stasiun Meteorologi Kualanamu","j":"UPT","p":"Sumatera Utara","e": 23,"lo": 98.89000,"la": 3.64200},{"n":"Stasiun Meteorologi Mutiara Sis-Al Jufri","j":"UPT","p":"Sulawesi Tengah","e": 228,"lo":119.91000,"la": -0.91589},{"n":"Stasiun Meteorologi Amahai","j":"UPT","p":"Maluku","e": 10,"lo":128.88000,"la": -3.35000},{"n":"Stasiun Klimatologi Genyem","j":"UPT","p":"Papua","e": 70,"lo":140.16000,"la": -2.60000},{"n":"Stasiun Meteorologi Kalianget","j":"UPT","p":"Jawa Timur","e":null,"lo":113.97000,"la": -7.05000},{"n":"Stasiun Klimatologi Siantan","j":"UPT","p":"Kalimantan Barat","e": 2,"lo":109.19000,"la": 0.07500},{"n":"Stasiun Geofisika Yogyakarta","j":"UPT","p":"DI Yogyakarta","e": 153,"lo":110.30000,"la": -7.82000},{"n":"Stasiun Meteorologi Nangapinoh","j":"UPT","p":"Kalimantan Barat","e": 40,"lo":111.47000,"la": -0.42000},{"n":"Stasiun Meteorologi Beto Ambari","j":"UPT","p":"Sulawesi Tenggara","e": 233,"lo":122.62000,"la": -5.47000},{"n":"Stasiun Meteorologi Juanda","j":"UPT","p":"Jawa Timur","e":null,"lo":112.77000,"la": -7.37000},{"n":"Stasiun Meteorologi Temindung","j":"UPT","p":"Kalimantan Timur","e": 10,"lo":117.16000,"la": -0.48000},{"n":"Stasiun Meteorologi Gusti Syamsir Alam","j":"UPT","p":"Kalimantan Selatan","e": 2,"lo":116.17000,"la": -3.30000},{"n":"Stasiun Meteorologi Sultan Baabullah","j":"UPT","p":"Maluku Utara","e": 33,"lo":127.38000,"la": 0.83330},{"n":"Stasiun Geofisika Kampung Baru","j":"UPT","p":"Nusa Tenggara Timur","e": 4,"lo":123.61000,"la":-10.15000},{"n":"Stasiun Meteorologi Ahmad Yani","j":"UPT","p":"Jawa Tengah","e":null,"lo":110.38000,"la": -6.98000},{"n":"Stasiun Meteorologi Raden Inten II","j":"UPT","p":"Lampung","e": 81,"lo":105.18000,"la": -5.27000},{"n":"Stasiun Meteorologi Maritim Pontianak","j":"UPT","p":"Kalimantan Barat","e": 4,"lo":109.34000,"la": -0.03000},{"n":"Stasiun Geofisika Sawahan","j":"UPT","p":"Jawa Timur","e": 835,"lo":111.79000,"la": -7.74000},{"n":"Stasiun Meteorologi Sultan Bantilan","j":"UPT","p":"Sulawesi Tengah","e": 2,"lo":120.79000,"la": 1.12114},{"n":"Stasiun Meteorologi Dok II Jayapura","j":"UPT","p":"Papua","e": 3,"lo":140.72000,"la": -2.53000},{"n":"Stasiun Geofisika Tretes","j":"UPT","p":"Jawa Timur","e": 832,"lo":112.64000,"la": -7.70000},{"n":"Stasiun Pemantau Atmosfir Global Bukit Koto Tabang","j":"UPT","p":"Sumatera Barat","e": 865,"lo":100.32000,"la": -0.20000},{"n":"Stasiun Meteorologi Ranai","j":"UPT","p":"Kep. Riau","e": 2,"lo":108.39000,"la": 3.91206},{"n":"Stasiun Geofisika Ternate","j":"UPT","p":"Maluku Utara","e": 43,"lo":127.35000,"la": 0.78100},{"n":"Stasiun Meteorologi Iskandar","j":"UPT","p":"Kalimantan Tengah","e": 22,"lo":111.66000,"la": -2.73000},{"n":"Stasiun Klimatologi Sampali","j":"UPT","p":"Sumatera Utara","e": 25,"lo": 98.78000,"la": 3.61687},{"n":"Stasiun Meteorologi Tardamu","j":"UPT","p":"Nusa Tenggara Timur","e": 15,"lo":121.83000,"la":-10.50000},{"n":"Stasiun Meteorologi Banyuwangi","j":"UPT","p":"Jawa Timur","e": 43,"lo":114.35000,"la": -8.21000},{"n":"Stasiun Meteorologi Maritim Belawan","j":"UPT","p":"Sumatera Utara","e": 3,"lo": 98.71000,"la": 3.78824},{"n":"Stasiun Klimatologi Kediri","j":"UPT","p":"Nusa Tenggara Barat","e": 52,"lo":116.17000,"la": -8.63640}];
var map = L.map('peta-bmkg', {scrollWheelZoom:false}).setView([-2.5,118],4);
L.tileLayer('https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png',{
attribution:'© OpenStreetMap © CARTO', maxZoom:18
}).addTo(map);
// Fix tile misalignment - invalidate setelah render
setTimeout(function(){ map.invalidateSize(); }, 300);
setTimeout(function(){ map.invalidateSize(); }, 800);
var warna = {"Pos Hujan Kerjasama":"#2196F3","aaws":"#E53935","UPT":"#43A047"};
data.forEach(function(d) {
var c = warna[d.j]||"#999";
var m = L.circleMarker([d.la,d.lo],{radius:5,color:c,fillColor:c,fillOpacity:0.7,weight:0.5});
m.bindPopup('&lt;b>'+d.n+'&lt;/b>&lt;br>Jenis: '+d.j+'&lt;br>Provinsi: '+d.p+(d.e?'&lt;br>Elevasi: '+d.e+' mdpl':''));
m.bindTooltip(d.n,{permanent:false,direction:'top'});
m.addTo(map);
});
map.on('zoomend',function(){
var z=map.getZoom();
document.querySelectorAll('#peta-bmkg .leaflet-tooltip').forEach(function(el){
el.style.display=z>=9?'block':'none';
});
});
// Paksa recalculate setelah layout selesai
window.addEventListener('load', function(){ map.invalidateSize(true); });
setTimeout(function(){ map.invalidateSize(true); }, 500);
setTimeout(function(){ map.invalidateSize(true); }, 1500);
})();
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', initPetaBMKG);
} else {
initPetaBMKG();
}
&lt;/script>
&lt;hr>
&lt;h2 id="2-kerapatan-stasiun-vs-standar-wmo">2. Kerapatan Stasiun vs Standar WMO&lt;/h2>
&lt;p>Standar WMO (2008) merekomendasikan minimal &lt;strong>1 pos per 250 km²&lt;/strong> untuk kawasan pegunungan tropis.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Wilayah&lt;/th>
&lt;th>Luas (km²)&lt;/th>
&lt;th>Stasiun&lt;/th>
&lt;th>Kerapatan (km²/pos)&lt;/th>
&lt;th>Status WMO&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Jawa&lt;/td>
&lt;td>128.297&lt;/td>
&lt;td>2.765&lt;/td>
&lt;td>46&lt;/td>
&lt;td>✅ Memenuhi&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Sumatera&lt;/td>
&lt;td>473.481&lt;/td>
&lt;td>1.321&lt;/td>
&lt;td>358&lt;/td>
&lt;td>⚠️ Di bawah standar&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Kalimantan&lt;/td>
&lt;td>748.168&lt;/td>
&lt;td>842&lt;/td>
&lt;td>889&lt;/td>
&lt;td>❌ Jauh di bawah&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Sulawesi&lt;/td>
&lt;td>188.522&lt;/td>
&lt;td>1.023&lt;/td>
&lt;td>184&lt;/td>
&lt;td>✅ Memenuhi&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Maluku&lt;/td>
&lt;td>31.982&lt;/td>
&lt;td>213&lt;/td>
&lt;td>150&lt;/td>
&lt;td>✅ Memenuhi&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Papua&lt;/td>
&lt;td>421.981&lt;/td>
&lt;td>323&lt;/td>
&lt;td>1.306&lt;/td>
&lt;td>❌ Jauh di bawah&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Kalimantan dan Papua memiliki kerapatan stasiun yang sangat rendah — DAS-DAS besar di sana hampir tidak terpantau secara langsung.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="3-gpm-imerg-sebagai-alternatif">3. GPM IMERG sebagai Alternatif&lt;/h2>
&lt;p>&lt;strong>GPM IMERG&lt;/strong> adalah produk curah hujan berbasis satelit dari NASA dan JAXA, tersedia gratis sejak Juni 2000.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Parameter&lt;/th>
&lt;th>Nilai&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Resolusi spasial&lt;/td>
&lt;td>0.1° × 0.1° (~11 km)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Resolusi temporal&lt;/td>
&lt;td>30 menit&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ketersediaan&lt;/td>
&lt;td>Juni 2000 – sekarang&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Varian terbaik&lt;/td>
&lt;td>Final Run (koreksi dengan data pos)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Akses&lt;/td>
&lt;td>Gratis via NASA Earthdata&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;h2 id="4-validasi-gpm-imerg--interaktif">4. Validasi GPM IMERG — Interaktif&lt;/h2>
&lt;p>Geser slider untuk mensimulasikan &lt;strong>koreksi bias&lt;/strong> pada data GPM IMERG. Metrik validasi (NSE, KGE, PBIAS, RMSE) berubah otomatis.&lt;/p>
&lt;div style="margin:1.2rem 0 0.5rem;">
&lt;label style="font-size:0.9rem;font-weight:600;">
Faktor Koreksi Bias: &lt;span id="bias-label" style="color:#1565C0;font-family:monospace;">1.00×&lt;/span>
&lt;/label>&lt;br>
&lt;input type="range" id="bias-slider" min="0.7" max="1.3" step="0.01" value="1.0"
style="width:100%;max-width:480px;margin-top:6px;accent-color:#1565C0;">
&lt;/div>
&lt;div style="display:grid;grid-template-columns:1fr 290px;gap:14px;margin-top:0.5rem;">
&lt;div>
&lt;div id="plot-hidrograf" style="height:290px;">&lt;/div>
&lt;p style="font-size:0.78rem;color:#888;text-align:center;margin-top:2px;">
DAS Akelamo, Pulau Obi, 2020–2022 · Hover untuk nilai per bulan
&lt;/p>
&lt;/div>
&lt;div>
&lt;table style="width:100%;border-collapse:collapse;font-size:0.85rem;">
&lt;thead>
&lt;tr style="background:#1A3A5C;color:white;">
&lt;th style="padding:6px 9px;text-align:left;">Metrik&lt;/th>
&lt;th style="padding:6px 9px;text-align:center;">Nilai&lt;/th>
&lt;th style="padding:6px 9px;text-align:left;">Status&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>&lt;td style="padding:5px 9px;font-weight:600;">NSE&lt;/td>
&lt;td id="val-nse" style="padding:5px 9px;text-align:center;font-family:monospace;font-weight:700;">&lt;/td>
&lt;td id="sta-nse" style="padding:5px 9px;font-size:0.8rem;">&lt;/td>&lt;/tr>
&lt;tr style="background:#f5f5f5;">
&lt;td style="padding:5px 9px;font-weight:600;">KGE&lt;/td>
&lt;td id="val-kge" style="padding:5px 9px;text-align:center;font-family:monospace;font-weight:700;">&lt;/td>
&lt;td id="sta-kge" style="padding:5px 9px;font-size:0.8rem;">&lt;/td>&lt;/tr>
&lt;tr>&lt;td style="padding:5px 9px;font-weight:600;">PBIAS (%)&lt;/td>
&lt;td id="val-pbias" style="padding:5px 9px;text-align:center;font-family:monospace;font-weight:700;">&lt;/td>
&lt;td id="sta-pbias" style="padding:5px 9px;font-size:0.8rem;">&lt;/td>&lt;/tr>
&lt;tr style="background:#f5f5f5;">
&lt;td style="padding:5px 9px;font-weight:600;">RMSE (mm)&lt;/td>
&lt;td id="val-rmse" style="padding:5px 9px;text-align:center;font-family:monospace;font-weight:700;">&lt;/td>
&lt;td id="sta-rmse" style="padding:5px 9px;">—&lt;/td>&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;div style="margin-top:8px;font-size:0.77rem;color:#444;background:#EFF6FF;
border-left:3px solid #1565C0;padding:7px 9px;border-radius:0 5px 5px 0;">
&lt;strong>Kriteria Moriasi et al. (2007):&lt;/strong>&lt;br>
NSE ≥ 0.65 → Memuaskan&lt;br>KGE ≥ 0.50 → Baik&lt;br>|PBIAS| ≤ 15% → Memuaskan
&lt;/div>
&lt;/div>
&lt;/div>
&lt;script>
(function() {
var obs = [210,185,230,160,90,45,20,15,30,110,185,230,
190,210,250,140,80,35,18,20,40,120,200,215,
220,195,240,150,85,50,22,18,35,115,190,225];
var imerg = [195,200,215,150,85,40,18,18,28,105,175,215,
180,195,235,135,75,32,16,18,38,115,190,200,
205,185,225,142,80,46,20,16,32,108,180,210];
var bln = ["Jan'20","Feb'20","Mar'20","Apr'20","Mei'20","Jun'20","Jul'20","Ags'20","Sep'20","Okt'20","Nov'20","Des'20",
"Jan'21","Feb'21","Mar'21","Apr'21","Mei'21","Jun'21","Jul'21","Ags'21","Sep'21","Okt'21","Nov'21","Des'21",
"Jan'22","Feb'22","Mar'22","Apr'22","Mei'22","Jun'22","Jul'22","Ags'22","Sep'22","Okt'22","Nov'22","Des'22"];
function hitung(sim) {
var n=obs.length, mo=0, ms=0;
for(var i=0;i&lt;n;i++){mo+=obs[i];ms+=sim[i];}
mo/=n; ms/=n;
var ssTot=0,ssRes=0,sumObs=0,sumSim=0,d1=0,d2=0,num=0;
for(var i=0;i&lt;n;i++){
ssTot+=Math.pow(obs[i]-mo,2); ssRes+=Math.pow(obs[i]-sim[i],2);
sumObs+=obs[i]; sumSim+=sim[i];
d1+=Math.pow(obs[i]-mo,2); d2+=Math.pow(sim[i]-ms,2);
num+=(obs[i]-mo)*(sim[i]-ms);
}
var nse=1-ssRes/ssTot;
var pbias=(sumSim-sumObs)/sumObs*100;
var rmse=Math.sqrt(ssRes/n);
var r=num/(Math.sqrt(d1)*Math.sqrt(d2));
var kge=1-Math.sqrt(Math.pow(r-1,2)+Math.pow(Math.sqrt(d2/n)/Math.sqrt(d1/n)-1,2)+Math.pow(ms/mo-1,2));
return {nse:nse,kge:kge,pbias:pbias,rmse:rmse};
}
function sta(v,t) {
if(t==="nse") return v>=0.75?"🟢 Sangat baik":v>=0.65?"🟡 Baik":v>=0.5?"🟠 Memuaskan":"🔴 Tidak memuaskan";
if(t==="kge") return v>=0.75?"🟢 Sangat baik":v>=0.5?"🟡 Baik":"🔴 Perlu koreksi";
if(t==="pbias") return Math.abs(v)&lt;=10?"🟢 Sangat baik":Math.abs(v)&lt;=15?"🟡 Baik":Math.abs(v)&lt;=25?"🟠 Memuaskan":"🔴 Tidak memuaskan";
return "—";
}
// Init Plotly
Plotly.newPlot('plot-hidrograf', [
{x:bln,y:obs,name:'Observasi',type:'scatter',mode:'lines',
fill:'tozeroy',fillcolor:'rgba(21,101,192,0.12)',
line:{color:'#1565C0',width:2},hovertemplate:'%{x}&lt;br>Observasi: &lt;b>%{y} mm&lt;/b>&lt;extra>&lt;/extra>'},
{x:bln,y:imerg,name:'GPM IMERG',type:'scatter',mode:'lines',
line:{color:'#C62828',width:2,dash:'dash'},hovertemplate:'%{x}&lt;br>GPM IMERG: &lt;b>%{y} mm&lt;/b>&lt;extra>&lt;/extra>'}
], {
margin:{t:10,b:50,l:52,r:10},
yaxis:{title:'mm/bulan',gridcolor:'#eee'},
xaxis:{tickangle:-45,tickfont:{size:9}},
legend:{orientation:'h',y:-0.3},
paper_bgcolor:'rgba(0,0,0,0)', plot_bgcolor:'rgba(0,0,0,0)',
font:{size:11}
}, {displayModeBar:false,responsive:true});
function update(bias) {
var sim = imerg.map(function(v){return Math.round(v*bias*10)/10;});
// Plotly.react: update seluruh data chart - lebih reliable dari restyle
Plotly.react('plot-hidrograf', [
{x:bln,y:obs,name:'Observasi',type:'scatter',mode:'lines',
fill:'tozeroy',fillcolor:'rgba(21,101,192,0.12)',
line:{color:'#1565C0',width:2},
hovertemplate:'%{x}&lt;br>Observasi: &lt;b>%{y} mm&lt;/b>&lt;extra>&lt;/extra>'},
{x:bln,y:sim,name:'GPM IMERG',type:'scatter',mode:'lines',
line:{color:'#C62828',width:2,dash:'dash'},
hovertemplate:'%{x}&lt;br>GPM IMERG: &lt;b>%{y} mm&lt;/b>&lt;extra>&lt;/extra>'}
], {
margin:{t:10,b:50,l:52,r:10},
yaxis:{title:'mm/bulan',gridcolor:'#eee'},
xaxis:{tickangle:-45,tickfont:{size:9}},
legend:{orientation:'h',y:-0.3},
paper_bgcolor:'rgba(0,0,0,0)', plot_bgcolor:'rgba(0,0,0,0)',
font:{size:11}
}, {displayModeBar:false,responsive:true});
var m = hitung(sim);
document.getElementById('val-nse').textContent = m.nse.toFixed(3);
document.getElementById('val-kge').textContent = m.kge.toFixed(3);
document.getElementById('val-pbias').textContent = m.pbias.toFixed(1);
document.getElementById('val-rmse').textContent = m.rmse.toFixed(1);
document.getElementById('sta-nse').textContent = sta(m.nse,'nse');
document.getElementById('sta-kge').textContent = sta(m.kge,'kge');
document.getElementById('sta-pbias').textContent = sta(m.pbias,'pbias');
}
update(1.0);
document.getElementById('bias-slider').addEventListener('input',function(){
var b=parseFloat(this.value);
document.getElementById('bias-label').textContent=b.toFixed(2)+'×';
update(b);
});
})();
&lt;/script>
&lt;hr>
&lt;h2 id="kesimpulan">Kesimpulan&lt;/h2>
&lt;ol>
&lt;li>Kerapatan pos hujan Indonesia tidak merata — Kalimantan dan Papua jauh di bawah standar WMO&lt;/li>
&lt;li>GPM IMERG Final Run merupakan alternatif andal untuk DAS tanpa pos hujan memadai&lt;/li>
&lt;li>Validasi dengan NSE, KGE, dan PBIAS wajib dilakukan sebelum digunakan dalam pemodelan&lt;/li>
&lt;li>Koreksi bias disarankan jika |PBIAS| &amp;gt; 15%&lt;/li>
&lt;/ol>
&lt;p>&lt;strong>Referensi:&lt;/strong> Moriasi et al. (2007) · Huffman et al. (2020) · WMO (2008)&lt;/p></description></item></channel></rss>