Значение карты для конкретного цвета в Seaborn heatmap
Я строю тепловую карту в Python с пакетом seaborn. Значения, которые я строю, дискретны, они являются целыми числами -1, 0 и 1.
Я хотел бы, чтобы ячейки в тепловой карте со значением -1 показать зеленый, с 0 как желтый и 1 красный.
можно ли указать это постановление в cubehelix_palette() или colour_palette() функции?
1 ответов
вы можете использовать библиотек matplotlib это ListedColormap следующим образом:
import numpy as np
import seaborn as sns
from matplotlib.colors import ListedColormap
data = np.random.randint(-1, 2, (10,10)) # Random [-1, 0, 1] data
sns.heatmap(data, cmap=ListedColormap(['green', 'yellow', 'red']), annot=True)
что дает:
вы можете заменить строки 'green', 'yellow', 'red' С hexcolors, такие как '#FF0000' (эквивалент 'red') или RGB цвета, такие как (1.,0.,0.) (эквивалентно 'red').
