У меня есть кадр данных pandas, который используется для раскраски тепловой карты. Я хочу раскрасить значение по диагоналям фрейма данных. Если диагональ содержит пять значений в виде [-1,2,0,-2,5], я хочу раскрасить их как 0 в «белом», затем 2 в светло-красном, 5 в самом темном красном, а затем -1 в светло-синий, -2 для самого темного синего (просто для того, чтобы указать интенсивность между значениями, где более темный красный соответствует положительному значению, а более темный синий соответствует отрицательному значению). Пример кода ниже:
import pandas as pd
import seaborn as sns
list1 = [[10],[5,-2],[-1,2,-3],[4,-5,3,-2]]
dfff = pd.DataFrame(l1)
print (dfff)
sns.heatmap(dfff,square=True, linewidths=.5, cbar_kws={"shrink": .5})
Я хочу, чтобы диагонали были цветными, например, в первом случае первая диагональ будет [10,-2,-3,-2]. Я хочу, чтобы они были окрашены как 10 с самым темным красным, 2-,-3,-2 в оттенках синего в зависимости от их интенсивности.
Любая помощь приветствуется. Спасибо.