Sistem analisis walkability (kemudahan berjalan kaki) untuk Kota Bandung menggunakan data OpenStreetMap dan batas administrasi resmi (Kelurahan).
- Analisis Berbasis Kelurahan: Menggunakan 159 batas administrasi resmi Kelurahan di Bandung
- Metrik Komprehensif:
- Kepadatan persimpangan jalan
- Panjang rata-rata blok
- Persentase trotoar
- Akses ke fasilitas umum
- Dashboard Interaktif: Streamlit app dengan filter hierarkis (Kecamatan → Kelurahan)
- Visualisasi Peta: Choropleth map dengan poligon administratif asli
- Export Data: GeoJSON dan CSV untuk integrasi GIS
- Total Kelurahan: 159
- Rata-rata Skor: 85.6/100
- Rentang Skor: 0 - 100
- Standar Deviasi: 14.7
- Braga (Sumur Bandung) - 100.0
- Babakan Ciamis (Sumur Bandung) - 100.0
- Citarum (Bandung Wetan) - 100.0
- Cihapit (Bandung Wetan) - 100.0
- Lingkar Selatan (Lengkong) - 100.0
- Python 3.8+
- Virtual environment (recommended)
- Clone atau download project
cd Bandung_Urban_Planing- Buat virtual environment
python -m venv venv- Aktifkan virtual environment
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate- Install dependencies
pip install osmnx networkx geopandas pandas numpy folium tqdm streamlit streamlit-folium plotlyUntuk menghasilkan data walkability baru:
python walkbility.pyOutput:
output/walkability_kelurahan.geojson- Data spasial dengan poligon Kelurahanoutput/walkability_stats.csv- Tabel statistik per Kelurahanoutput/walkability_map.html- Peta interaktif standalone
Waktu Eksekusi: ~5-10 menit (tergantung koneksi internet)
Untuk membuka dashboard interaktif:
streamlit run app.pyDashboard akan terbuka di browser pada http://localhost:8501
Fitur Dashboard:
- Filter per Kecamatan dan Kelurahan
- KPI cards dengan statistik real-time
- Peta choropleth interaktif
- Grafik distribusi skor
- Tabel area dengan walkability rendah
# Tekan Ctrl+C di terminal
# Atau gunakan Task Manager untuk kill process streamlit.exehttps://bandung-walkability-analysis.streamlit.app/
Bandung_Urban_Planing/
├── walkbility.py # Script analisis utama
├── app.py # Streamlit dashboard
├── output/ # Folder hasil analisis
│ ├── walkability_kelurahan.geojson
│ ├── walkability_stats.csv
│ └── walkability_map.html
├── venv/ # Virtual environment
└── README.md # Dokumentasi ini
Edit file walkbility.py:
# Baris 19-20
WALK_BUFFER_M = 400 # Radius akses fasilitas (meter)
GRID_SIZE_M = 500 # Tidak digunakan (legacy)Edit fungsi normalize_metrics() di walkbility.py (baris 108-128):
# Bobot default:
# - Intersection Density: 40%
# - Average Block Length: 30%
# - Sidewalk Coverage: 15%
# - Amenity Access: 15%- Jaringan Jalan: OpenStreetMap (OSMnx)
- Fasilitas Umum: OSM POI (amenity, shop, leisure, tourism)
- Batas Administrasi: OSM administrative boundaries (level 6 & 7)
-
Intersection Density (Kepadatan Persimpangan)
- Jumlah persimpangan per km²
- Normalisasi: 0-500 intersections/km²
-
Average Block Length (Panjang Blok)
- Rata-rata panjang segmen jalan
- Normalisasi: 30-100 meter (lebih pendek = lebih baik)
-
Sidewalk Coverage (Cakupan Trotoar)
- Persentase jalan dengan data trotoar
- Normalisasi: 0-100%
-
Amenity Access (Akses Fasilitas)
- Persentase node dalam radius 400m dari fasilitas
- Normalisasi: 0-100%
Score = (0.40 × Intersection_Norm) +
(0.30 × Block_Norm) +
(0.15 × Sidewalk_Norm) +
(0.15 × Amenity_Norm)
Skor akhir: 0-100 (lebih tinggi = lebih walkable)
- Buka QGIS
- Layer → Add Layer → Add Vector Layer
- Pilih
output/walkability_kelurahan.geojson - Style berdasarkan kolom
score
import geopandas as gpd
gdf = gpd.read_file('output/walkability_kelurahan.geojson')
gdf.to_file('output/walkability.shp')pip install osmnxEdit walkbility.py baris 14:
ox.settings.timeout = 300 # Tingkatkan timeout ke 5 menitPastikan file output/walkability_kelurahan.geojson ada:
python walkbility.py # Generate ulang dataGunakan port berbeda:
streamlit run app.py --server.port 8502- OSMnx: Boeing, G. (2017). OSMnx: New methods for acquiring, constructing, analyzing, and visualizing complex street networks. Computers, Environment and Urban Systems, 65, 126-139.
- Walkability Metrics: Frank, L. D., et al. (2010). The development of a walkability index: application to the Neighborhood Quality of Life Study. British Journal of Sports Medicine, 44(13), 924-933.
Dikembangkan menggunakan:
- Python 3.x
- OSMnx untuk data OpenStreetMap
- GeoPandas untuk analisis spasial
- Streamlit untuk dashboard interaktif
Untuk pertanyaan atau saran, silakan buka issue di repository ini.
Last Updated: 19 Januari 2026