CM Customized heat and gross floor area density maps

Table of Contents

In a glance

This module generates raster files both for a heat density and a gross floor area density map in the format required by the Hotmaps toolbox. The input data is provided in the form of a CSV file containing information on location, gross floor area and heat demand for each single building to be taken into account.

To Top


This module generates both a heat density and a gross floor area density map in the form of raster files. The input to the module is a CSV file with certain column headers. It should contain the following data: the X- and the Y-coordinate of the centre of the buildings in EPSG:3035 coordinate reference system, the gross floor area and the annual heat demand of the buildings. The generated raster files follow required projection and resolution by the Hotmaps toolbox and therefore, can easily be uploaded to the user accounts.

This module is only available as a stand-alone module; it is not integrated in the online version of the Hotmaps toolbox. The users of this CM should be familiar with python programming and have installed required libraries (e.g. Numpy, Pandas, GeoPandas and GDAL).

To Top

Inputs and outputs


The module accepts a CSV file as input. The following headers are expected in case of any of the input file types (should be available in the header of the CSV file):

Mandatory inputs

  • hotmaps_ID: provide a unique, integer ID for each feature (polygon)
  • ID_shp: If your polygons have other IDs, you may keep them (polygon)
  • GFA: Gross floor area in m2
  • demand: Heat demand of each feature (polygon) in kWh
  • X_3035: The X-Coordinate of the center of the feature (polygon) in EPSG 3035 projection (Mandatory for the CSV file: can be left empty)
  • Y_3035: The Y-Coordinate of the center of the feature (polygon) in EPSG 3035 projection (Mandatory for the CSV file: can be left empty)

Optional inputs: You may have other columns in your input CSV file. This does not impact the functionality of the calculation module.

  • Type: Building type: set to 1 for service sector; other values are considered as residential (optional: can be left empty)
  • Year_Construction: Year of construction (optional: can be left empty)
  • Address: Address of the building (optional: can be left empty)
  • Footprint: footprint of the building in m2 (required if values for GFA are not provided)
  • NrFloor: number of floors (required if values for GFA are not provided)
  • spec_demand: Specific heat demand of each feature (polygon) in kWh

Important Note: The headers should be written as stated above. Otherwise, the code will break and returns an error.


As output, two raster files are generated:

  • A gross floor area density map with pixel values in m2 per hectare
  • A heat demand density map with pixel values in MWh per hectare

To Top


To visualize an own raster file in the Hotmaps toolbox, it should respect the rules defined by the toolbox. Generally, a raster should:

  1. have the CRS of ETRS89-extended / LAEA Europe - EPSG:3035;
  2. The coordinate of the raster origin (top-left corner of the raster) should be a multiplicand of 100, e.g. (4334900, 3019700);
  3. The resolution of the raster map should be 100x100m;
  4. The raster should refer to a location in Europe.

Based on the above criteria and coordinates given in the input CSV file, each input coordinate is allocated to a certain pixel. Entries allocated to one single pixel are aggregated. The bottom-left pixel and top-right pixel determine the extent of the pixel. The resolution of the map is 100x100m. Accordingly, a heat density map and gross floor area map is generated.

To Top

GitHub repository of this calculation module

Here you get the bleeding-edge development for this calculation module.

To Top

Sample run

Download the repository to your local computer. Do not change the location of files in the directory. The first step in generating a bottom up heat demand density map and gross floor area density map is to adapt and fill the provided template CSV file in the repository. The CSV file can be found in the "Inputs" folder. Pay attention to the mandatory fields and their required formats. For example, the X and Y coordinates must be in required projection. Also do not change the headers as this can lead to malfunctioning of the script.

Save the CSV file and then return to the main root. In order to be able to run this calculation module, you need to have Python 3 installed on your machine. The required libraries to run the code are as follows:

  1. Numpy
  2. Pandas
  3. GeoPandas
  4. GDAL

If you have all the requirements, open the "" python script in your python IDE.

Here, you do not need to make any changes. Just press on the Run button.

The outputs are automatically saved under "Outputs" folder. The generated heat demand density and gross floor area density maps are compatible with the Hotmaps toolbox and can be uploaded to the Hotmaps user account and used in the calculation modules.

To Top

How to cite

Mostafa Fallahnejad, in Hotmaps-Wiki, CM Customized heat and gross floor area density maps (September 2020)

To Top

Authors and reviewers

This page was written by Mostafa Fallahnejad (EEG - TU Wien).

☑ This page was reviewed by Marcul Hummel (e-think).

To Top


Copyright © 2016-2020: Mostafa Fallahnejad

Creative Commons Attribution 4.0 International License

This work is licensed under a Creative Commons CC BY 4.0 International License.

SPDX-License-Identifier: CC-BY-4.0


To Top


We would like to convey our deepest appreciation to the Horizon 2020 Hotmaps Project (Grant Agreement number 723677), which provided the funding to carry out the present investigation.

To Top

View in another language:

Bulgarian* Czech* Danish* German* Greek* Spanish* Estonian* Finnish* French* Irish* Croatian* Hungarian* Italian* Lithuanian* Latvian* Maltese* Dutch* Polish* Portuguese (Portugal, Brazil)* Romanian* Slovak* Slovenian* Swedish*

* machine translated