With our simplified approach to calculating a Heat Risk Index for detecting potential urban heat islands, we encountered typical challenges in implementing complex Data Science workflows.<\/SPAN><\/P>
We want to share our implementation experiences with other developer teams and hope to derive some best practices for development with ArcGIS.<\/SPAN><\/P>
Generate Tesselation<\/H2>
This function generates a tessellation grid of regular polygons (e.g., triangles, squares, hexagons) that covers a specific area. We use this function to create a grid pattern over a certain extent. This is useful for further spatial analyses, such as examining distribution patterns or creating heatmaps for calculating the Heat Risk Index.<\/SPAN><\/P>
def generate_tessellation(output_feature_class, extent, size, spatial_ref):
""" Generate a tessellation grid. """
arcpy.management.GenerateTessellation(
Output_Feature_Class=output_feature_class,
Extent=extent,
Size=size,
Spatial_Reference=spatial_ref
)<\/code><\/pre>
For calculating the Heat Risk Index, we generate a <\/SPAN>tessellation grid with an area of 1500 square meters and spatially limit the urban area using the extent. The generated feature class represents a grid of hexagonal cells within the specified area and with the specified cell size and spatial reference. It serves as the basis for a spatial overlay with surface temperatures extracted from the Landsat raster.<\/SPAN><\/P>
Note<\/SPAN><\/H2>
Developers must ensure that parameters are correctly defined and that the chosen spatial reference system matches the input data. When using H3 hexagons, the H3 resolution must be set correctly to obtain the desired cell size. More details can be found here: Generate Mosaic (Data Management)—ArcGIS Pro | Documentation<\/A><\/SPAN><\/SPAN><\/P>
👉<\/span>
Github Repo: urban-heat-risk-index<\/A> <\/P>
👉<\/span>
ArcGIS Developer Bundle<\/A> <\/P>