momepy.form_factor#
- momepy.form_factor(geometry, height)[source]#
Calculates the form factor of each object given its geometry and height.
\[surface \over {volume^{2 \over 3}}\]where
\[surface = (perimeter * height) + area\]Adapted from [Bourdic et al., 2012].
- Parameters:
- geometryGeoDataFrame | GeoSeries
A GeoDataFrame or GeoSeries containing polygons to analyse.
- heightNDArray[np.float64] | Series
array of heights
- Returns:
- Series
Examples
>>> path = momepy.datasets.get_path("bubenec") >>> buildings = geopandas.read_file(path, layer="buildings")
Synthesize some building height information.
>>> import numpy as np >>> rng = np.random.default_rng(seed=42) >>> height = rng.integers(low=9, high=30, size=len(buildings))
>>> momepy.form_factor(buildings, height) 0 5.588952 1 8.403204 2 5.149302 3 5.381587 4 5.030861 ... 139 6.039771 140 5.904980 141 5.508910 142 5.869335 143 5.378663 Name: form_factor, Length: 144, dtype: float64