У меня есть набор данных в массиве Numpy в следующем формате. Каждый «столбец» является отдельным критерием. Я хочу отобразить тепловую карту, где каждый «столбец» будет соответствовать диапазону оценок в этом столбце:
[[ 226 600 3.33 915. 92.6 98.6 ]
[ 217 700 3.34 640. 93.7 98.5 ]
[ 213 900 3.35 662. 88.8 96. ]
...
[ 108 600 2.31 291. 64. 70.4 ]
[ 125 800 3.36 1094. 65.5 84.1 ]
[ 109 400 2.44 941. 52.3 68.7 ]]
Я написал функцию для создания тепловой карты:
def HeatMap(data):
#generate heatmap figure
figure = plt.figure()
sub_figure = figure.add_subplot(111)
heatmap = sub_figure.imshow(data, interpolation='nearest',cmap='jet', aspect=0.05)
#generate color bar
cbar = figure.colorbar(ax=sub_figure, mappable=heatmap, orientation='horizontal')
cbar.set_label('Scores')
plt.show()
Вот что генерирует функция:
Как указано выше, видно, что проблема заключается в моей функции где-то в диапазоне Scores
от 0 до максимального значения в наборе данных 2500. Как я могу изменить свою функцию так, чтобы тепловая карта отображала оценки в столбцах в соответствии с их диапазоном, а не диапазоном всего набора данных? Мои первые мысли - изменить размеры массива на что-то вроде [[226],[600]] etc.
, но не уверен, что это решение
Спасибо за вашу помощь