问题描述
我有一些这样的数据框:
df = pd.DataFrame({
'FSA': ['T9X','T2B',...],'vals': [-1.1,2.2,...]
'geometry': [some elements of type shapely.geometry.polygon.polygon]
})
在这里我从2016年加拿大人口普查中获得了几何边界:http://www12.statcan.gc.ca/census-recensement/2011/geo/bound-limit/files-fichiers/2016/lfsa000a16a_e.zip
我基本上是在尝试使用此数据框制作具有某些统计信息的普查地图,如下所示:
df.plot_bokeh(
simplify_shapes=20000,category="vals",colormap='RdBu',colormap_range=(np.min(df.vals),np.max(df.vals)),hovertool_columns=["FSA","vals"],figsize=(800,800),title='Vals per FSA'
)
我尝试在文档中查找bokeh以及整个地方,但是我真的找不到如何标准化颜色的方法,因此颜色中间是0(白色),而负值是红色/正值是蓝色。另外,如何关闭科学计数法?任何帮助都非常感激:)
解决方法
这对创建自定义色带没有帮助,但是您可以做的一件事情就是“作弊”,然后将0放在中间,使其变为白色,这是使用最小值(或最大值,或其他任意值)两端的端点(只要它们相同)(在colormap_range的两侧)。因此,取决于您要如何表示数据(两种方式的值都将聚集在颜色图的远端之一)中。因此,这不是理想的解决方案,而是一种解决方案。