Используя Matplotlib, я хочу построить 2D тепловую карту. Мои данные представляют собой массив Numpy размером n на n, каждый со значением от 0 до 1. Итак, для элемента (i, j) этого массива я хочу построить квадрат с координатой (i, j) в моем тепловая карта, цвет которой пропорционален значению элемента в массиве.
Как я могу это сделать?
python
numpy
matplotlib
Karnivaurus
источник
источник
matplotlib
галерею перед публикацией? Есть несколько хороших примеров использованияimshow
,pcolor
и ониpcolormesh
делают то, что вы хотитеОтветы:
imshow()
Функции с параметрамиinterpolation='nearest'
иcmap='hot'
должны делать то , что вы хотите.источник
Seaborn берет на себя большую часть ручной работы и автоматически рисует градиент сбоку от диаграммы и т. Д.
Или вы даже можете построить верхний / нижний левый / правый треугольники квадратных матриц, например, квадратную и симметричную корреляционную матрицу, поэтому отображение всех значений в любом случае будет избыточным.
источник
Для двумерного
numpy
массиваimshow()
вам может помочь простое использование :Этот код создает непрерывную тепловую карту.
Вы можете выбрать другие встроенные
colormap
из здесь .источник
Я бы использовал функцию pcolor / pcolormesh из matplotlib, поскольку она допускает неравномерный интервал между данными.
Пример взят из matplotlib :
источник
Вот как это сделать из CSV:
где
dat.xyz
находится в формеисточник