Цветовая карта в matplotlib позволяет помечать "плохие" значения, то есть NaN, указанным цветом c. Когда мы строим цветную полосу впоследствии, этот цвет не включается. Есть ли предпочтительный подход, чтобы иметь как непрерывную цветовую полосу, так и отдельную легенду для указанного c цвета для плохих значений?
Редактировать: Конечно, можно использовать «расширить» функциональность . Однако это решение не является удовлетворительным. Функция легенды / цветовой панели заключается в разъяснении значения цветов для пользователя. На мой взгляд, это решение не сообщает, что значение является NaN.
Пример кода:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
data = np.random.rand(10, 10)
data[0:3, 0:3] = np.nan # some bad values for set_bad
colMap = cm.RdBu
colMap.set_bad(color='black')
plt.figure(figsize=(10, 9))
confusion_matrix = plt.imshow(data, cmap=colMap, vmin=0, vmax=1)
plt.colorbar(confusion_matrix)
plt.show()
, который выдает: