Изменить цвет пропущенных значений в тепловой карте Seaborn

1

Рассмотрим пример отсутствующих значений в документации Seaborn:

corr = np.corrcoef(np.random.randn(10, 200))
mask = np.zeros_like(corr)
mask[np.triu_indices_from(mask)] = True
sns.heatmap(corr, mask=mask, vmax=.3, square=True)

Изображение 174551

Как изменить цвет отсутствующих значений, например, на черный? Цвет отсутствующих значений следует указывать независимо от цветовой схемы тепловой карты, она может отсутствовать в цветовой схеме.

Я попробовал добавить facecolor = 'black' но это не сработало. На цвет может влиять, например, sns.axes_style("white") но мне непонятно, как это можно использовать для установки произвольного цвета.

Теги:
matplotlib
seaborn

1 ответ

1
Лучший ответ

Вы можете использовать следующий код:

corr = np.corrcoef(np.random.randn(10, 200))
mask = np.zeros_like(corr)
mask[np.triu_indices_from(mask)] = True
g = sns.heatmap(corr, mask=mask, vmax=.3, square=True)
g.set_facecolor('xkcd:salmon')

Вам нужно использовать set_facecolor для объекта plot. Перейдите на любой цвет, который вы хотите.

Результат на этом графике:

Изображение 174551

  • 0
    Спасибо! Странно, что добавление facecolor = 'xkcd:salmon' в качестве аргумента ключевого слова не работает?
  • 0
    Это немного странно. facecolor указан как действительный kwarg для Axes.pcolormesh. Так, вероятно, есть что-то, что отвергает это?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню