more basic implementation of heat_map into plot.add_heatmap()