创建不对称的色彩映射

时间:2017-12-16 14:38:19

标签: python folium

我正在使用map colors中的代码在folor等值区域地图中创建here的色彩映射:

from branca.colormap import linear

colormap = linear.RdBu.scale(
    df.MyValue.min(),
    df.MyValue.max())

colormap

my colormap

正如您所看到的,与0相比,最小值和最大值都是偏斜的,并且我希望将其反映在色彩图中,即只有值< 0应映射为红色,而所有正值应映射为蓝色。

有没有办法在色彩映射中出现这种不对称?我在网上看不到很多例子。

我在做:

colormap = colormap.to_step(index=[-200, 0, 1200])

但不顺利:

enter image description here

2 个答案:

答案 0 :(得分:3)

如果您想要不对称的色阶(在文档中称为不规则),您可以设置索引。例如:

import branca.colormap as cm

colormap = cm.LinearColormap(colors=['red','blue'], index=[-200,0],vmin=-200,vmax=1200)
colormap

enter image description here

转换将由您的索引给出。例如,这些是其他转换:

colormap = cm.LinearColormap(colors=['red','blue'], index=[0,200],vmin=-200,vmax=1200)
colormap

enter image description here

添加第三种颜色:

   colormap = cm.LinearColormap(colors=['red','lightblue','blue'], index=[-200,0,1200],vmin=-200,vmax=1200)
    colormap

enter image description here

答案 1 :(得分:0)