Made by Masa Aladwan and Mohammad Moataz
This project aims to provide accurate weather forecasting for various cities in Jordan. The project comprises data collection, model building, data visualization using Power BI, and a web interface for user interaction. Additionally, it integrates real-time data streaming from sensors for live updates.
- Source: Meteostat API
- Parameters Collected: Temperature (temp), Pressure (pres), Wind Direction (wdir), Wind Speed (wspd), Date and Time (datetime)
- Technology Used: Python
- Cities Covered: Various cities in Jordan
- Models Developed:
- Temperature Prediction Model
- Pressure Prediction Model
- Wind Direction Prediction Model
- Wind Speed Prediction Model
- Input: City and Date
- Output: Predicted values for Temperature, Pressure, Wind Direction, and Wind Speed
- Libraries Used:
scikit-learn
for building machine learning modelspandas
for data manipulation
- Framework: FastAPI
- Features:
- User form to input City and Date
- Display forecasted weather values
- Two main buttons:
- Dashboard: Redirects to the Power BI dashboard displaying historical and forecasted data
- Real-Time Data Streaming: Displays real-time data from sensors
- Tool Used: Power BI
- Features:
- Interactive dashboard
- Date range selection from 1999 to 2023
- City-specific weather data visualization
- Sensors Used:
- Ultrasonic Sensor HC-SR04
- DHT11 Humidity & Temperature Sensor
- Technology Stack:
- Node-RED: For data collection and processing from sensors
- Power BI: For real-time data visualization
- Functionality:
- Node-RED collects data from sensors
- Processes data and feeds it into the pipeline
- Sends processed data to Power BI for real-time dashboard updates
-
Clone the repository:
git clone https://github.com/MohammadMoataz2/WeatherForecasting.git
-
Install dependencies:
pip install -r requirements.txt
-
Run the application:
- main.html
- main.py --> python -m uvicorn main:app --reload
-
Input your information to predict the Weather.