Search code examples
pythonvisualizationaltair

Set a diverging color scheme to center on zero in Altair


How can I go about getting the colour scale to center on zero for a diverging colour scale.


Solution

  • We can now use domainMid=0.

    Adapting the example from @jakevdp:

    df = pd.DataFrame(np.random.randn(100, 3), columns=['x', 'y', 'z'])
    alt.Chart(df).mark_point().encode(
        x='x',
        y='y',
        color=alt.Color('z', scale=alt.Scale(scheme='blueorange', domainMid=0))
    )
    

    enter image description here