Heatmap+
Heatmap+ shows a value as colored cells over time. Use it to see at a glance which hours, days or data sources run high, low or out of target, without reading a trend.
Overview

Watch the demo
See Heatmap+ in a practical PI Vision workflow.
When to use it
Use this symbol when you need to:
- See daily patterns: the same value by hour of day, one row per day.
- Compare many data sources over the same hours, one row per source.
- Spot periods that are out of target by coloring the cells with named limits.
- Zoom into a period, or open one cell's period on the whole display.
Choose Combo Chart+ to follow the individual values of a few data sources over time. Choose Box Plot+ to compare how widely a value spreads from period to period.
Before you begin
- Use AF attributes with numeric values. Summary mode does not support PI Points: the symbol switches to Interpolated and logs a warning.
- Add more than one data source for a row per source. The day-by-hour view uses one data source: the first.
- Configure PI Web API for Vision Library+. The symbol loads its own history.
- Keep the range short while you set up. A long range with a short interval creates thousands of cells and slows the display.
Add and set up the symbol
- Select Heatmap+ in the PI Vision symbol gallery.
- Drag several numeric AF attributes onto the display, for example the OEE of four assembly lines.
- Set the display time range to 8 hours.
- Right-click the symbol and select Configure Heatmap....
- Under Axis Y, check that Type is DATASOURCE.
- Under Data Retrieval, check that Mode is Summary, Interval is 1 Hour and Type is Average.
- Close the pane. The symbol shows one row per data source and one column per hour, colored from red (lowest) to green (highest).

Without limits, the colors only show where a value lies between the lowest and highest value on screen. Use Choose the color scale or Color cells with named limits to give them a meaning.
Common tasks
Show hour of day against day
Use this to find daily patterns, for example whether one shift always runs lower. The grid uses the first data source.
- Set the display time range to several days, for example 7 days.
- Right-click the symbol, select Configure Heatmap... and open Axis Y.
- Set Type to TIME (1).
- Set Group to Day (2). Each row is one day.
- Under Data Retrieval, set Interval to 2 Hour. Each column is a 2-hour period.

The symbol shows the newest day at the top and the hours of the day from left to right. A dark cell means no value was available for that period.

Choose Hour under Group for one row per hour with one column per interval inside the hour. Keep the interval coarse: a 30-minute interval over many months creates a very large grid.
Choose the color scale
Use this when the default red-to-green scale hides the differences you care about. Values here sit between 48 and 52, so the scale is fixed to that range.
- Open the Coloring group and set Color Mode to GRADIENT and Type to CUSTOM.
- Under Colors (1), change the swatches. The first color is the lowest value and the last is the highest. Use + Add Color for more stops.
- Select the Custom range button (2).
- Enter Maximum (3) and Minimum (4).
- Under Data Labels, set Show to ON to print the value in each cell.

The Auto Range button fits the scale to the lowest and highest value on screen again.

Color cells with named limits
Use this to show at once which cells are low, on target or high.
- Open the Coloring group and set Color Mode to RANGES (1) and Type to CUSTOM.
- Select a range in the list to expand it. Enter its Name (2), Color, From (3) and To.
- Select + Add Range (4) for each further range.
- Open the Legend group and check that Enabled is ON.

Each cell takes the color of the range its value falls in. The legend lists every range with its limits. Here 49.5 to 50.5 is on target, shown green; lower values are red and higher values blue.

To use the limits of the data source instead, add them with Add Multi-State... and set Type to MULTISTATE.
Zoom into a period
Use this to look at part of a long range, for example the hours around an upset. Zoom needs a time view that moves: Axis Y must be DATASOURCE.
- Open the Toolbar group. Set Show Toolbar to ON (1) and Reveal to ALWAYS (2).
- Open Interactivity. Set Enable Zoom to ON (3).
- Choose the starting Drag mode (4): PAN moves the visible window, BOX ZOOM zooms into a rectangle you draw.
- Close the pane. Select Zoom In twice.

The chart shows the middle quarter of its columns. Select Reset Zoom to return to the full range. Here (1) is Zoom In and (2) is Reset Zoom.

With Apply to Display Time ON, the zoom also changes the display time range, and the other symbols follow it. Here the display range is now 9:00 AM to 3:00 PM (1, 3) and the range length is 6 hours (2).

Open a cell's period on the display
Use this to look at one hour of a heatmap in the other symbols of the display.
- Open Interactivity.
- Set Apply to Display Time to ON (1).
- Decide Include End Time (2). ON ends the range at the end of the cell. OFF ends it one second earlier, so the next cell's first value is not included.
- Close the pane and click a cell.

The display time range becomes the period of that cell. Here (1) is the start and (2) the end, one hour apart.

The heatmap follows the display time range too. To keep the heatmap on its own range, set Start- and Endtimes under Data Retrieval to Custom time range.
Use the symbol

| What it shows | |
|---|---|
| (1) | The toolbar: Pan, Box zoom, Zoom In, Zoom Out, Reset Zoom, Fullscreen and Download. |
| (2) | The legend, in RANGES mode: each color with its name and limits. |
| (3) | A row label: one data source, or one day or hour in the time view. |
| (4) | A cell. Its color shows where its value lies; its label shows the value when Data Labels is on. |
| (5) | The tooltip with the cell's time and value. |
| (6) | A column label: the start of the period. |
Interactions
- Hover a cell to see its time, data source and value.
- Click a cell to apply its period to the display time, when Apply to Display Time is on. This changes the time range of the whole display, not data.
- Zoom with the mouse wheel or Zoom In and Zoom Out. Drag to pan, or to zoom into a rectangle in Box zoom mode. Switch the mode from the toolbar. The chart returns to the Drag mode setting when the display is opened again.
- Zoom Out doubles the visible window. When all columns are already visible and Apply to Display Time is on, it doubles the display time range around its center instead. Reset Zoom returns to all columns and restores the display time range the chart left.
- With Apply to Display Time on, the display time range runs from the start of the first visible column to the end of the last one. It is updated a moment after the last zoom step, or when you release the mouse after a drag, so a run of steps reloads the display once.
- Fullscreen opens the chart in a large dialog, without the zoom buttons. Download offers PNG, SVG, PDF, CSV, JSON and XLSX. The data formats are hidden when data export is disabled for the installation. The data export has one header row of periods, then one row per heatmap row.
- Toolbar visibility follows Reveal: with On Hover it fades in when the pointer is over the chart, with Always it stays visible. A touch device always shows it.
- The shared Time Bar is available on this symbol.
No action in the chart writes data to the PI System.
Configure the symbol
The pane has these sections: Trend Options, Axes, Data Retrieval, Time Bar and Trace Options.
Trend Options
| Setting | What it does |
|---|---|
| Title, Sub Title | Show a title and a subtitle, with text, alignment and size. |
| Style | Theme, surface, container style, Foreground, Background, Border and Font Size. Sparkline hides the axes and borders for a minimal view. |
| Color Mode | GRADIENT blends the colors across a range. RANGES colors by named ranges. MULTIPLE gives each data source its own color, with the value shown as strength of that color. Set the per-source color under Trace Options. |
| Type | CUSTOM uses the colors and ranges you enter. MULTISTATE uses the multi-state limits and colors; right-click the symbol and select Add Multi-State... first. Not offered when a data source is a digital state. |
| Colors, range buttons, Maximum, Minimum | Gradient only. See Choose the color scale. |
| Ranges | Name, Color, From and To for each range, plus + Add Range and the sort buttons. See Color cells with named limits. |
| Border, Radius | Border outlines each cell. Radius rounds the cell corners. |
| Legend | Available when Color Mode is RANGES. Enabled, Position, Placement, Alignment, Size and Color (marker or text). |
| Data Labels | Show prints the value in each cell. |
| Tooltip | Show turns the hover panel on. |
| Toolbar | Show Toolbar and Reveal (On Hover or Always). See Zoom into a period. |
| Enable Zoom, Drag mode | Turn zoom and the PAN / BOX ZOOM modes on. Available when Axis Y is DATASOURCE and Sparkline is off. |
| Apply to Display Time | A cell click or a zoom changes the display time range. See Open a cell's period on the display. |
| Include End Time | Available when Apply to Display Time is on. Decides whether a clicked cell's range ends at the cell end or one second before. |
Axes
| Setting | What it does |
|---|---|
| Axis Y: Type | DATASOURCE gives one row per data source. TIME gives one row per period of the first data source. See Show hour of day against day. |
| Axis Y: Group | Available with TIME. Minute, Hour, Day, Week, Month or Year. |
| Axis Y: Show, Position, Invert Scale, Title | Show the axis, place it on the left or right, reverse the row order and add a title. |
| Axis X: Datetime Format | Sets how the column labels read, for example a time, a date or both. |
| Axis X: Show, Position, Invert Scale, Title | Show the axis, place it at the bottom or top, reverse the column order and add a title. |
Data Retrieval and Time Bar
| Setting | What it does |
|---|---|
| Mode | Summary computes a PI summary per interval and needs AF attributes. Recorded loads archived values. Interpolated loads one interpolated value per interval and works with PI Points. Joined takes the timestamps of one base data source and interpolates the others to them; it is offered with more than one data source. |
| Interval | AUTO picks an interval that fits the display range and the symbol width. MANUAL takes a value and a unit. AUTO is offered when Axis Y is DATASOURCE. |
| Type, Basis | Available with Summary. The calculation (for example Average) and Time Weighted or Event Weighted. |
| Sync Time | Available with Interpolated and Summary. Aligns the values to a fixed time, so 00:15:00 always reads at 15 minutes past the hour. |
| Start- and Endtimes | Display time range, Custom time range or Duration and offset. A custom range keeps the heatmap on its own period while the display moves. |
| Time Bar | Adds the shared Time Bar. Its interval choice replaces Interval. |
Trace Options
Select a data source in the list, then set its options.
| Setting | What it does |
|---|---|
| Color | The base color of the data source. Available when Color Mode is MULTIPLE. |
| Format | Format (Database, General, Number or Scientific) and Units for the values of this data source. |
Troubleshooting and limitations
| Symptom | Cause | What to do |
|---|---|---|
| The cells show values but have no color. | Type is MULTISTATE and the data source has no multi-state limits. | Set Type to CUSTOM, or add limits with Add Multi-State.... |
| The cells are empty and the log says PI Points are not supported in summary mode. | The data sources are PI Points. | Use Interpolated mode, or use AF attributes. |
| A dark gap appears in a row. | No value was available for that period. | Check the time range, the Interval and the source data. |
| The zoom buttons and Enable Zoom are missing. | Axis Y is TIME, or Sparkline is on. | Set Axis Y to DATASOURCE and switch Sparkline off. |
| The legend is missing. | The legend is shown only for RANGES. | Set Color Mode to RANGES. |
| The display is slow to load. | A long range with a short interval, or Group Hour over many weeks. | Shorten the range or use a longer Interval. |
- Limitation: A TIME heatmap shows the first data source only and cannot be zoomed.
- Limitation: Large grids reduce the readability of data labels. Turn Data Labels off or use a coarser interval.
