我想用一个发散的颜色Map表来给Pandas的背景上色。使这比人们想象的更棘手的方面是居中。在下面的示例中,使用了红色到蓝色的色彩Map表,但色彩Map表的中间不用于零附近的值。如何创建一个居中的背景色显示,其中零是白色,所有底片是红色色调,所有正片是蓝色色调?
import pandas as pd
import numpy as np
import seaborn as sns
np.random.seed(24)
df = pd.DataFrame()
df = pd.concat([df, pd.DataFrame(np.random.randn(10, 4)*10, columns=list('ABCD'))],
axis=1)
df.iloc[0, 2] = 0.0
cm = sns.diverging_palette(5, 250, as_cmap=True)
df.style.background_gradient(cmap=cm).set_precision(2)
上述显示中的零具有红色色调,最接近白色背景的零用于负数。
1条答案
按热度按时间rkue9o1l1#