Skip to content

Commit e3e12ed

Browse files
authored
πŸ“– Update README (#20)
1 parent 04b050a commit e3e12ed

16 files changed

+188
-44
lines changed

β€ŽLICENSEβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2022 Taruma Sakti Megariansyah
3+
Copyright ©️ 2022 Taruma Sakti Megariansyah, PT. FIAKO ENJINIRING INDONESIA
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

β€ŽREADME.mdβ€Ž

Lines changed: 93 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,107 @@
1-
# hidrokit Rainfall Data Explorer (hidrokit-rainfall)
1+
# RAINFALL DATA EXPLORER (hidrokit-rainfall)
22

3-
![image](https://user-images.githubusercontent.com/1007910/173458676-3db6da81-d583-40d0-87b6-0a635e25e50d.png)
3+
<div align="center">
4+
<img src="./_readme/fiakodev-rainfall-thumbnail.png" alt="hidrokit-rainfall thumbnail"><br>
45

5-
__Rainfall Data Explorer__ (`hidrokit-rainfall`) adalah _dashboard_ untuk mengeksplorasi data hujan di setiap stasiunnya dan membandingkannya baik secara numerik maupun visual. `hidrokit-rainfall` dibuat menggunakan teknologi [Dash + Plotly](https://plotly.com/) dengan bahasa pemrograman Python. Proyek `hidrokit-rainfall` bersifat _open-source_ dengan lisensi MIT.
6+
<img alt="developed by" src="https://img.shields.io/badge/developed%20by-taruma%20%26%20fiakodev-orange">
7+
<img alt="project by" src="https://img.shields.io/badge/project%20by-taruma%20%26%20PT.%20FIAKO%20ENJINIRING%20INDONESIA-blue">
8+
<img alt="License" src="https://img.shields.io/github/license/fiakoenjiniring/rainfall.svg">
9+
<br>
10+
<img alt="GitHub release" src="https://img.shields.io/github/release/fiakoenjiniring/rainfall.svg?logo=github">
11+
<img alt="GitHub Release Date" src="https://img.shields.io/github/release-date/fiakoenjiniring/rainfall.svg?logo=github">
12+
</div>
613

7-
## Cara Menjalankan Dashboard (Lokal)
14+
**Rainfall Data Explorer** atau `hidrokit-rainfall` adalah aplikasi web atau dashboard yang dapat digunakan untuk menganalisis data hujan harian. Dari aplikasi ini dapat memperoleh informasi hujan maksimum, total hujan, hari hujan, hari kering, dan kejadian hujan maksimum setiap periode yang ditentukannya dengan presentasi menggunakan visualisasi data. Grafik kumulatif tahunan dan konsistensi (kurva massa ganda) juga ditambahkan sejak versi v1.1.x.
815

9-
Sangat dianjurkan untuk menjalankan dashboard ini menggunakan mesin lokal.
16+
## FITUR APLIKASI
1017

11-
- Buat _virtual environment_ menggunakan `environment.yml` (untuk conda) atau `requirements.txt` (untuk venv).
12-
- Jalankan `app.py` di terminal.
13-
- Buka alamat `http://127.0.0.1:8050/` di browser.
18+
<div align="center">
19+
<h3>Eksplorasi Data Hujan</h3>
20+
<img src="./_readme/fkrainfall-ft-1-1.gif" width="450">
21+
<br>
22+
<span align="center">Interaksi Tabel Data Hujan</span>
23+
</div>
1424

15-
## Cara Penggunaan
25+
<div align="center">
26+
<h3>Visualisasi Data Hujan</h3>
27+
<img src="./_readme/fkrainfall-ft-2-1.gif" width="450">
28+
<br>
29+
<span align="center">Visualisasi Data Hujan (line)</span>
30+
<br><br>
31+
<img src="./_readme/fkrainfall-ft-2-2.gif" width="450">
32+
<br>
33+
<span align="center">Visualisasi Data Hujan (bar)</span>
34+
</div>
1635

17-
Dashboard ini bisa membaca berkas berformat '.csv' dengan:
36+
<div align="center">
37+
<h3>Analisis Data Hujan</h3>
38+
<img src="./_readme/fkrainfall-ft-3-1.gif" width="450">
39+
<br>
40+
<span align="center">Hasil Analisis (Tabel)</span>
41+
<br><br>
42+
<img src="./_readme/fkrainfall-ft-3-2.gif" width="450">
43+
<br>
44+
<span align="center">Download Hasil Analisis (CSV)</span>
45+
</div>
1846

19-
- Kolom pertama merupakan tanggal dengan format yang dapat dibaca oleh fitur `parse_dates` yang tersedia di `pandas`. Direkomendasikan mengubahnya menjadi format `YYYY-MM-DD`.
20-
- Kolom lainnya merupakan data hujan dengan header.
21-
- Baris pertama akan dibaca sebagai header tabel, sehingga dianjurkan menambahkan label untuk setiap kolomnya. Gunakan label `DATE` untuk kolom tanggal yang akan digunakan sebagai index.
47+
<div align="center">
48+
<h3>Visualisasi Analisis Data Hujan</h3>
49+
<img src="./_readme/fkrainfall-ft-4-1.gif" width="450">
50+
<br>
51+
<span align="center">Visualisasi Analisis (Rekap)</span>
52+
<br><br>
53+
<img src="./_readme/fkrainfall-ft-4-2.gif" width="450">
54+
<br>
55+
<span align="center">Visualisasi Max + Sum</span>
56+
<br><br>
57+
<img src="./_readme/fkrainfall-ft-4-3.gif" width="450">
58+
<br>
59+
<span align="center">Visualisasi Dry + Rain</span>
60+
<br><br>
61+
<img src="./_readme/fkrainfall-ft-4-4.gif" width="450">
62+
<br>
63+
<span align="center">Visualisasi Kejadian Hujan Maksimum</span>
64+
<br><br>
65+
<img src="./_readme/fkrainfall-ft-4-5.gif" width="450">
66+
<br>
67+
<span align="center">Kumulatif Tahunan</span>
68+
<br><br>
69+
<img src="./_readme/fkrainfall-ft-4-6.gif" width="450">
70+
<br>
71+
<span align="center">Konsistensi (Kurva Massa Ganda)</span>
72+
</div>
2273

23-
Navigasi dashboard ini antara lain:
74+
## KEKURANGAN
2475

25-
- _Drag and Drop_ berkas atau pilih berkas pada tombol "Drag and Drop or Select Files". Klik "Use Example Data" jika ingin melihat demonstrasi dashboard ini.
26-
- Jika prosesnya berhasil, akan muncul tabel dengan data yang di-_upload_ atau contoh data. Tabel ini _editable_ sehingga bisa menyesuaikan saat proses pengoreksian saat eksplorasi data. Bisa juga diubah nama tabelnya. Pastikan nama kolom berbeda dan nama kolom pertama (tanggal) selalu "DATE".
27-
- Klik "Visualize Data" untuk melihat visualisasi data. Pada tahap ini, Anda bisa kembali ke tabel jika ingin melakukan pengoreksian data. Anda juga bisa melakukan filter pada setiap kolom untuk eksplorasi selanjutnya.
28-
- Tabel yang telah diubah, bisa di-_download_ kembali dalam bentuk CSV.
29-
- Setelah tabel sudah dikoreksi. Bisa dilanjutkan ke tahapan analisis data. Perlu diingat, data yang dianalisis sesuai dengan tampilan/informasi tabel terkini. Jadi, jika masih ada filter, maka analisis hanya dilakukan pada data yang telah terfilter.
30-
- Klik "Analyze Data" untuk melakukan analisis data. Perlu diingat, proses ini akan memakan waktu jika memiliki dataset yang besar. Jadi, sangat disarankan menggunakan mesin lokal untuk proses ini. Karena yang dapat diakses di web hanya berupa demonstrasi saja dan menggunakan layanan gratis sehingga sangat terbatas kemampuannya.
31-
- Analisis data terbagi menjadi tiga periode yaitu 2 periode (biweekly), setiap bulanan (monthly), dan tahunan (yearly). Sebagai catatan, biweekly itu dibagi berdasarkan 16 hari pertama kemudian sisa harinya pada setiap bulan.
32-
- __Baru di `v1.1.0`__: Analisis konsistensi (kurva massa ganda) dan kumulatif hujan tahunan.
33-
- Analisis data yang dilakukan berupa:
34-
- `days`: Jumlah hari pada setiap periodenya (16 hari untuk biweekly, 1 bulan untuk monthly, dan 1 tahun untuk yearly).
35-
- `max`: Nilai maksimum pada setiap periode.
36-
- `sum`: Total nilai pada setiap periode.
37-
- `n_rain`: Jumlah hari hujan di setiap periode.
38-
- `n_dry`: Jumlah hari kering di setiap periode. Catatan: Ini akan menghitung nilai `np.nan` sebagai hari kering.
39-
- `max_date`: Tanggal kejadian hujan maksimum terjadi pada setiap periode.
40-
- Tabel analisis tidak dapat diubah dan hanya sebagai penyedia informasi saja.
41-
- Melihat tabel analisis rasanya cukup sulit untuk diceritakan atau diinterpretasikan, oleh karena itu disediakan tombol "Visualize it!" untuk melakuakn visualisasi tabel analisis.
42-
- Selain melakukan visualisasi, tabel analisis juga dapat di-_download_ dengan mengklik tombol "Download Results as CSV". Perlu dicatat, `dataframe` tabel analisis menggunakan `MultiIndex` sehingga pada format CSV akan perlu dilakukan pengolahan lagi.
43-
- Visualisasi dari tabel analisis berupa:
44-
- Group Bar Chart untuk setiap periode dengan kolom `max` dan `sum`. Grafik ini bisa melihat secara langsung perbandingan nilai antar stasiun.
45-
- Stack Bar Chart untuk setiap periode dengan kolom `n_rain` dan `n_dry`. Grafik ini bisa memberikan gambaran periode yang memiliki frekuensi hujan/kekeringan tinggi/rendah secara sekilas.
46-
- Bubble Chart (Maximum Rainfall Events) memberikan gambaran besar terkait tanggal kejadian saat hujan maksimum terjadi di setiap stasiun. Ukuran lingkaran menunjukkan seberapa besar hujan maksimum yang terjadi.
47-
- __Baru di `v1.1.0`__: Ditambahkan grafik kumulatif hujan tahunan dan konsistensi (kurva massa ganda) untuk setiap stasiun.
76+
Berikut daftar kekurangan atau _known issues_ aplikasi ini:
4877

49-
Navigasi dengan grafik interaktif plotly:
78+
- Perlu dilakukan koreksi ataupun analisis lebih lanjut untuk masuk ke proses analisis frekuensi. Contohnya:
79+
- Koreksi kurva massa ganda.
80+
- Menghitung hujan wilayah.
81+
- Harus melakukan pengolahan tabel setelah menerima hasil analisis dalam bentuk CSV.
5082

51-
- Pada setiap grafik plotly, dapat dilakukan interaksi langsung dengan grafik seperti mengatur stasiun/data mana saja yang ditampilkan, pembesaran pada periode tertentu. mengatur ukuran sumbu, dll.
52-
- Sangat dianjurkan untuk mengeksplorasi sendiri mengenai _mode bar_ yang ada di kanan atas setiap grafik plotly.
53-
- Setiap grafik bisa di-_download_ dalam bentuk `.png` untuk kepentingan menaruh di dokumen atau lainnya.
83+
## LISENSI
5484

55-
## Catatan
85+
[MIT LICENSE](./LICENSE)
5686

57-
- ~~Dashboard ini seharusnya bergantung pada paket hidrokit terutama pada modul `hidrokit.contrib.taruma.hk98` mengenai rekap data (tabel analisis). Akan tetapi ditemukan isu di hidrokit/hidrokit#219. Sehingga untuk sementara modul tersebut terpisah dengan dashboard ini.~~ Sudah menggunakan hidrokit versi 0.4.1.
87+
```
88+
Copyright ©️ 2022 Taruma Sakti Megariansyah, PT. FIAKO ENJINIRING INDONESIA
89+
90+
Permission is hereby granted, free of charge, to any person obtaining a copy
91+
of this software and associated documentation files (the "Software"), to deal
92+
in the Software without restriction, including without limitation the rights
93+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
94+
copies of the Software, and to permit persons to whom the Software is
95+
furnished to do so, subject to the following conditions:
96+
97+
The above copyright notice and this permission notice shall be included in all
98+
copies or substantial portions of the Software.
99+
100+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
101+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
102+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
103+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
104+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
105+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
106+
SOFTWARE.
107+
```
960 KB
Loading
1.22 MB
Loading
1.04 MB
Loading
3.73 MB
Loading
3.43 MB
Loading
7.73 MB
Loading
6.72 MB
Loading
1.13 MB
Loading

0 commit comments

Comments
Β (0)