Vous rencontrez une particularité de ScalarMappables
. Ils prennent soin de normaliser les données pour qu'elles soient dans la plage [0, 1] et de transmettre cette valeur à la carte des couleurs. Par défaut, il définit le bas de la plage sur min(values_you_are_mapping)
et le haut au maximum, ce qui si toutes vos valeurs sont identiques, la largeur de la plage étant nulle, et le mappage (v - max_v) / (max_v - min_v)
explose. La solution est de lui dire quelle devrait être la plage par
imshow(..., vmin=min_t, vmax=max_t)
scatter(..., vmin=min_t, vmax=max_t)
où max_t
et min_t
sont les températures maximales et minimales que vous pourriez jamais obtenir. Cela rendra également le mappage des couleurs cohérent sur toutes vos figures.