Statistical aevaluation of delays in the Vvs network. Delyzer is an application to observe the line you need so that you can set your alarm as late as possible. Late (high risk) is counted as a delay > 3 minutes.
- Matthias Schneider - {{MatrikelNummerHier}}
- Data retrieval
- graphic representation
- Samuel Matzeit - {{MatrikelNummerHier}}
- Data preparation
- REST-Backend
- Dennis Hilgert - {{MatrikelNummerHier}}
- Django setup
- Data Collection
python3 -m venv .venv # Create virtual python environment
. .venv/bin/activate # Unix - Activate virtual python environment
. .venv/Scripts/activate.bat # Windows
deactivate # Deactivate virtual python environment
pip install -r requirements.txt # Create the superuser account for /admin login
python manage.py migrate # Migrate database
python manage.py createsuperuser # Create the superuser account for /admin login
python manage.py collect_data [--observe-station <station-id> OR --observe-line <line-name>] [--clear True]
# Please note that you have to lookup the station id of the target station with the following command first or observe a line
python manage.py find_station_id --station-name Stadtmitte
# If you want to observe a station and collect the departure data of e.g. Stadtmitte, then use
python manage.py collect_data --observe-station 5006056
# If you want to observe all stations of a line and collect the departure data of e.g. S1, then use
python manage.py collect_data --observe-line S1
# If you want to clear your database before collecting new data, then add the argument --clear True to your command
. .venv/bin/activate # Unix - Activate virtual python
python manage.py runserver # Start the Server
- tkinter is required
python frontend/app.py # Start frontend
- Follow the naming conventions for python projects
- Use snake_case for files, functions and variables
- Use PascalCase for classes
- Use single quotes (except doc-strings)
- Declare private variables with __variable
- Use self-explainatory naming for functions and variables
- Comments and doc strings have to be written in english
- Everything that will be displayed to the user has to be written in german
- Django
- djangorestframework
- Pandas
- vvspy
- pylint
- matplotlib
- tkinter
- tkinter is required
python frontend/app.py # Start frontend
python manage.py runserver # Run server
python manage.py makemigrations # Generate migrations after making changes on models
python manage.py migrate # Apply changes to the database