.. _installation_ref: Installation ============ PyHeatDemand is supported for Python version 3.10 and younger. Previous versions are officially not supported. It is recommended to create a new virtual environment using the `Anaconda Distribution `_ before using PyHeatDemand. The main dependencies of PyHeatDemand are `GeoPandas `_ and `Rasterio `_ for the vector data and raster data processing, `Matplotlib `_ for plotting, `GeoPy `_ for extracting coordinates from addresses, `OSMnx `_ for getting `OpenStreet Maps `_ building footprints from coordinates, `Rasterstats `_ for analyzing the resulting heat demand maps and more secondary dependencies like `Pandas `_, `NumPy `_, `Shapely `_, etc. Installation via PyPi --------------------- PyHeatDemand can be installed via `PyPi `_ using:: pip install pyheatdemand Installation via Anaconda -------------------------- PyHeatDemand is also available from `conda-forge `_:: conda install -c conda-forge pyheatdemand Installation using YML-file --------------------------------- It is recommended to use the provided `environment.yml `_ to ensure that all dependencies are installed correctly:: conda env create -f environment.yml Forking or cloning the repository --------------------------------- The PyHeatDemand repository can be forked or cloned from https://github.com/AlexanderJuestel/pyheatdemand:: git clone https://github.com/AlexanderJuestel/pyheatdemand.git A list of `requirements.txt `_ and an `environment.yml `_ can be found in the repository. Continuous Integration _______________________ A CI is present to test the current code. It can be initiated using `pytest --cov` within the `test` folder. After running the tests, `coverage report -m` can be executed to get an report on the coverage and which lines are not covered by the tests.