Skip to main content
v2.2

Polar Heatmap

Series for visualizing a Polar Heatmap with a static sector and annuli count. Has API for fast modification of cell values.

Polar Heatmap SeriesPolar Heatmap Series

Creating Polar Heatmap Series

series = chart.add_heatmap_series(sectors=4, annuli=3)

Intensity interpolation

# Enable smooth intensity interpolation:
series.set_intensity_interpolation(True)

Invalidate Values

Polar heatmap series also supports modifying only a subset of the entire data array. Heatmaps consume data as uniform number matrixes. You can imagine this as a table of numbers:

# Update a block of cells starting at annulus 1, sector 2:
values = [
[0, 1, 2, 3],
[4, 5, 6, 7],
[8, 9, 10, 11],
]
series.invalidate_intensity_values(
values=values,
i_annulus=1,
i_sector=2
)
Polar Heatmap Intensity StepsPolar Heatmap Intensity Steps

"uniform" means that the amplitude and radial step between each measurement is always the same.

Polar Heatmap Color LookupPolar Heatmap Color Lookup

Fill Coloring

Polar Heatmap SeriesPolar Heatmap Series
# Solid color fill:
series.set_color('#FF0000')

# Remove any fill style:
series.set_empty_color_fill()

values = [
[0, 2.5, 5.0, 7.5],
[1, 3.5, 6.0, 8.5],
[2, 4.5, 7.0, 10.0],
]
series.invalidate_intensity_values(values)

# Define a red→blue LUT (lookup table) for the fill
series.set_palette_coloring(
steps=[
{'value': 0, 'color': 'red'},
{'value': 10, 'color': 'blue'},
],
look_up_property='value',
interpolate=True,
)

# With formatted legend display:
series.set_palette_coloring(
steps=[
{'value': 0, 'color': '#0000FF'},
{'value': 100, 'color': '#FF0000'},
],
look_up_property='value',
formatter_precision=2, # Decimal places
formatter_unit='mag', # Unit suffix
formatter_scale=1.5, # Scale values
formatter_type='scientific', # 'standard', 'compact', 'engineering', 'scientific'
formatter_operation='floor', # 'none', 'round', 'ceil', 'floor'
)

Series Utility Methods

# Enable or disable theme-based effects on hover, etc.
series.set_effect(True)

# Include this series when axes auto-scroll or auto-fit:
series.set_auto_scrolling_enabled(True)

# Highlight sector under pointer on hover:
series.set_highlight_on_hover(True)

Legend

Please see common legend section.

Examples

Link to the examples