Menghubungkan Streamlit
Dalam artikel ini, kami akan menjelaskan proses membangun dasbor menggunakan Streamlit. Untuk membuatnya lebih ilustratif, kami akan membuat dasbor yang terhubung ke basis data analitik dan memantau status kendaraan secara real-time.
Fitur dashboard
Tampilkan jumlah total objek
Visualisasikan status pergerakan (bergerak/berhenti/parkir)
Visualisasikan status koneksi (aktif/idle/offline)
Tabel terperinci dengan status saat ini dari semua kendaraan
Penyaringan berdasarkan tipe kendaraan, grup, status pergerakan, dan status koneksi
Pembaruan data otomatis setiap 5 menit
Beralih antara tema terang dan gelap
Persyaratan teknis
Python 3.8+
Akses internet untuk koneksi database
Minimal 2 GB RAM
Instalasi dan penyiapan
1. Kloning repositori
2. Buat lingkungan virtual
Pastikan Anda telah menginstal Python 3.8 atau lebih tinggi. Anda dapat memeriksa versi dengan perintah python --version.
3. Instal dependensi
Setelah mengaktifkan lingkungan virtual, instal semua pustaka yang diperlukan:
Koneksi database
1. Buat berkas konfigurasi
Buat sebuah .env berkas di direktori root proyek:
Referensi parameter koneksi
Host
DB_HOST di .env berkas
Alamat server database yang diberikan dalam email selamat datang Anda
Port
DB_PORT di .env berkas
Default adalah 5432 untuk PostgreSQL
Nama database
DB_NAME di .env berkas
Nama database yang ditetapkan untuk Anda
Nama pengguna
DB_USER di .env berkas
Nama pengguna database Anda
Kata sandi
DB_PASS di .env berkas
Kata sandi database yang aman
Mode SSL
String koneksi dalam kode Python
Tetapkan ke require dalam string koneksi
Skema
DB_SCHEMA di .env berkas
Tentukan skema (raw_business_data atau raw_telematics_data)
2. Memperoleh kredensial
Minta kredensial untuk menghubungkan ke basis data demonstrasi dengan menghubungi administrator.
Menjalankan dasbor
Setelah mengatur koneksi basis data, jalankan dasbor dengan perintah:
Setelah diluncurkan, Anda akan melihat pesan serupa dengan:
Buka URL yang ditentukan di peramban Anda. Dasbor akan tersedia di http://localhost:8501 (atau pada URL jaringan jika Anda ingin membukanya dari perangkat lain di jaringan).
Mengembangkan komponen kustom
Jika Anda ingin memodifikasi dasbor atau membuat komponen baru:
1. Memodifikasi dasbor yang ada
Streamlit secara otomatis memuat ulang aplikasi saat Anda mengubah kode sumber. Cukup edit berkas moving_status_dashboard.py dan simpan perubahan Anda.
2. Menambahkan visualisasi baru
Untuk menambahkan bagan dan diagram baru, gunakan pustaka:
Plotly:
import plotly.express as pxatauimport plotly.graph_objects as goVisualisasi bawaan Streamlit:
st.bar_chart(),st.line_chart(), dll.
Contoh menambahkan bagan baru:
3. Debugging
Untuk debugging, gunakan
Pemecahan masalah
Masalah koneksi database
Kesalahan koneksi: Periksa kebenaran kredensial dalam berkas
.envdan ketersediaan basis dataKesalahan SSL: Pastikan IP Anda ada dalam daftar yang diizinkan untuk mengakses basis data
Kesalahan waktu habis: Periksa stabilitas koneksi internet Anda dan pengaturan firewall
Masalah dependensi
Kesalahan saat menginstal psycopg2-binary:
Windows:
pip install pipwin && pipwin install psycopg2-binaryLinux:
sudo apt install python3-dev libpq-devmacOS:
brew install postgresql
Konflik dependensi:
Buat lingkungan virtual baru
Instal dependensi satu per satu, mulai dengan streamlit
Masalah lain
Berikut beberapa trik yang dapat membantu Anda memperbaiki masalah umum:
Perbarui dependensi:
pip install -r requirements.txt --upgradePeriksa kompatibilitas Python:
python --version(sebaiknya 3.8+)Saat mengubah kode, sertakan pesan debug:
Kesalahan cache Streamlit: hentikan aplikasi dan jalankan dengan
--clear_cacheflag:
Langkah selanjutnya
Setelah berhasil menghubungkan Power BI ke instance Private Telematics Lakehouse Anda, kami menyarankan Anda untuk:
Jelajahi skema data yang tersedia dengan meninjau Ikhtisar skema bagian untuk lebih memahami struktur data dan relasinya.
Mulailah dengan kueri sederhana yang berfokus pada entitas bisnis tertentu sebelum membangun dashboard yang kompleks - periksa kueri contoh sebagai referensi.
Dukungan
Untuk pertanyaan teknis atau permintaan akses ke database demo, silakan hubungi: [email protected]
Last updated
Was this helpful?