It's not the same problem, by any means, but I would probably approach this by generating an SVG, using a method broadly similar to the one in this post:
Easysvg is a nice little wrapper to make svg files. Unzip and put in the gateway’s user-lib/pylib/site-packages folder.
easysvg.zip (6.7 KB)
View attached using the csv data posted. The SVG can be converted to base64 to display in an image component.
heatmap_test.zip (76.0 KB)
Script:
import easysvg
import base64
class heatPalette:
'''
Calculate the RGB value of a point on a gradient.
Usage: heatPalette(minval, maxval, [colors])
minval - minimun value to sca…