This project is an interactive dashboard built with Streamlit to analyze air quality in Yogyakarta, Indonesia. By integrating data from multiple APIs and storing it in a PostgreSQL database, the dashboard provides insights into how weather conditions affect the Air Quality Index (AQI).
The dashboard includes the following features:
-
Air Quality Distribution by Weather
Understand how AQI levels vary under different weather conditions. -
Main Pollutants by Weather Description
Identify dominant pollutants for each weather condition. -
Correlation Between Weather Parameters and AQI
Analyze relationships between temperature, humidity, wind speed, and AQI. -
AQI Predictions
Get forecasts of AQI trends based on historical data and weather conditions.
- Python 3.7+
- PostgreSQL database (cloud-hosted, e.g., Aiven)
-
Clone the repository:
git clone [email protected]:eben4ya/ETL-Streamlit.git cd ETL-Streamlit
-
Install the dependencies:
pip install -r requirements.txt
-
Configure the PostgreSQL connection in
app.py
:def get_postgresql_connection(): return psycopg2.connect( host="YOUR_HOST", port="YOUR_PORT", database="YOUR_DATABASE", user="YOUR_USERNAME", password="YOUR_PASSWORD", sslmode="require" )
-
Run the dashboard:
streamlit run app.py
Access the dashboard at http://localhost:8501
.
-
Overview
- Displays key metrics, such as AQI trends and weather summaries.
-
Interactive Filters
- Filter data by weather conditions or specific pollutants.
-
Visualizations
- Charts for AQI distribution, main pollutants, and weather correlations.
-
Data Table
- View raw data directly from the PostgreSQL database.
- Project Repository: GitHub - ETL Air Quality
- APIs Used:
- Benaya Imanuela (22/494790/TK/54313)
- Muhammad Hilmi Dzaki Wismadi (22/497591/TK/54539)
- Yitzhak Edmund Tio Manalu (22/499769/TK/54763)