Skip to main content

hypercadaster_ES

A comprehensive Python library for downloading, processing, and analyzing Spanish cadastral data with integration of external geographic datasets and EnergyPlus model generation.

Python Version License Version

🎯 Overview

hypercadaster_ES is a powerful Python library designed for comprehensive analysis of Spanish cadastral data. It provides tools for downloading official cadastral information, integrating it with external geographic datasets, performing advanced building analysis including geometric inference, orientation analysis, and exporting building models for energy simulation (EnergyPlus IDF).

Key Features

  • 🏘️ Comprehensive Cadastral Data Access: Download building and parcel data from the Spanish Cadastre, and nationwide address points from CartoCiudad (CNIG)
  • 🗺️ Multi-source Data Integration: Merge with census tracts, postal codes, elevation models, and OpenStreetMap data
  • 🧮 Socioeconomic Enrichment: INE indicators via social_ES (income atlas, population, education, dwelling stock & tenure, empty & secondary dwellings, rental & housing prices, electricity) joined per building, plus per-building Essential-Characteristics downscaling
  • 🌦️ Weather Enrichment: Annual ERA5-Land climate indicators per building (heating/cooling degree days, precipitation, solar irradiation, temperature, humidity, wind) via merge(weather_layer=True), gathered from the Copernicus analysis-ready (ARCO) Zarr stores
  • 🏗️ Advanced Building Analysis: Geometric inference, floor footprint calculation, building space classification, shadow analysis
  • 📊 Orientation & Environmental Analysis: Building orientation analysis, street relationships, shadow calculations, terrain analysis
  • 🔌 External Tool Integration: Export capabilities for building energy simulation tools (EnergyPlus via eppy+geomeppy)
  • 📈 Scalable Processing: Optimized for large-scale municipal and provincial analysis with DuckDB persistence
  • Memory Efficient: Central DuckDB database reduces memory footprint; heavy BLOB columns loaded on demand

📚 Documentation

Getting Started

Library Reference

Development

🚀 Quick Start

Library installation

pip install hypercadaster-ES

Basic Usage

import hypercadaster_ES as hc

# Download data for Barcelona municipality
hc.download("./data", cadaster_codes=["08900"])

# Merge all data into a unified GeoDataFrame (persisted to building_results.duckdb internally)
gdf = hc.merge("./data", cadaster_codes=["08900"])

# Optional: save the GeoDataFrame for later use (e.g., as Parquet or pickle)
gdf.to_parquet("./data/barcelona_data.parquet")  # or to_pickle(..., compression="gzip")

Accessing Results via DuckDB

The central building_results.duckdb is the canonical artifact. Query directly instead of materialising full GeoDataFrames:

# Read inferred indicators from DB (returns pandas DataFrame)
br = hc.utils.read_br_inferred_indicators("08900", "./data")

# Fetch heavy shadow/terrain columns for one building (on demand)
heavy = hc.utils.get_heavy_columns_for_building(
    "./data", "08900", "8341105DF2884A"
)

# Access other tables via ResultsHandle (advanced)
from hypercadaster_ES import _db
handle = hc.ResultsHandle("./data/results/building_results.duckdb", "08900")
spaces_df = handle.sbr_to_pandas()  # space-level results

For detailed installation instructions and advanced examples, see Installation & Quick Start.

🎯 Key Applications

  • Urban Planning & Municipal Management: Building stock analysis, zoning compliance, infrastructure planning
  • Energy & Environmental Analysis: Building energy modeling, carbon footprint analysis
  • Real Estate & Economic Analysis: Property valuation, market analysis, location intelligence
  • Academic Research: Urban geography, transportation research, social sciences applications

📊 Geographic Coverage

  • National Coverage: Complete coverage of peninsular Spain, Balearic Islands, Canary Islands (except Basque Country and Navarre)
  • Enhanced Coverage: Additional Barcelona open data layers
  • Scale Range: Individual buildings to entire autonomous communities

🏗️ Advanced Features

  • Building Inference Engine: Advanced geometric analysis, floor footprint calculation, orientation analysis, shadow and terrain analysis
  • Multi-source Integration: Cadastral, census, elevation, postal, and OpenStreetMap data
  • CAT Files Support: Detailed building space classification from official cadastral CAT format
  • Energy Simulation Ready: Export formats compatible with building energy simulation tools (EnergyPlus IDF via hc.energy.build_energy_model)
  • POI Proximity Analysis: Points of interest from OpenStreetMap with distance-based indicators
  • Socioeconomic Layer: INE indicators via social_ES joined at the finest geographic level (merge(social_ES_layer=True)), each figure taken from a single source dataset, with ec__* Essential-Characteristics downscaling when CAT files are used
  • Weather Layer: Annual ERA5-Land climate indicators per building (merge(weather_layer=True)) — degree days, precipitation, irradiation, temperature, humidity, wind — via the Copernicus analysis-ready (ARCO) Zarr stores with cdsapi fallback
  • Commercial Premises Analysis: Barcelona-specific ground floor commercial data

👥 Authors & Contributors

Primary Authors:

Institutional Affiliations:

  • CIMNE - Centre Internacional de Mètodes Numèrics en Enginyeria, Building Energy and Environment (BEE) group
  • Universitat Politècnica de Catalunya (UPC) - Technical University of Catalonia

📄 License

This project is licensed under the EUPL v1.2. See the license for details.


hypercadaster_ES - Built with ❤️ for the Spanish urban analysis and building research community

Last updated: July 2026 | Version 1.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hypercadaster_es-1.3.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hypercadaster_es-1.3.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file hypercadaster_es-1.3.0.tar.gz.

File metadata

  • Download URL: hypercadaster_es-1.3.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for hypercadaster_es-1.3.0.tar.gz
Algorithm Hash digest
SHA256 aa5089732911ff21e338c2d9e4734ddfa725070fe44f8547c8cebde692713999
MD5 81116921dd96d5f57be784ad5acadd1e
BLAKE2b-256 f5284106dfde1af3163e7d9ff383795a967eda4f516ac9c0c8fb9154484cc172

See more details on using hashes here.

File details

Details for the file hypercadaster_es-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for hypercadaster_es-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54e6c1333e793684cfbd2dc3c2d2553f4ff0e87571fafaf6dd1241285d8191fd
MD5 f20e7b045f5740fe58f4ef54128ce447
BLAKE2b-256 5113009f1bbee3ee0efbd6c3d6b211ed7cb8993e77484c96bc7369fe7d2c7712

See more details on using hashes here.

Release history Release notifications | RSS feed

1.3.1

2 files

This release

1.3.0 This release

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.0.5

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page