Interactive Rectangular Brush#

This example shows how to add a simple rectangular brush to a scatter plot. By clicking and dragging on the plot, you can highlight points within the range.

import altair as alt
from vega_datasets import data

source = data.cars()
brush = alt.selection_interval()

alt.Chart(source).mark_point().encode(
    x='Horsepower:Q',
    y='Miles_per_Gallon:Q',
    color=alt.when(brush).then("Cylinders:O").otherwise(alt.value("grey")),
).add_params(brush)
import altair as alt
from vega_datasets import data

source = data.cars()
brush = alt.selection_interval()

alt.Chart(source).mark_point().encode(
    x='Horsepower:Q',
    y='Miles_per_Gallon:Q',
    color=alt.when(brush).then("Cylinders:O").otherwise(alt.value("grey")),
).add_params(brush)
# No channel encoding options are specified in this chart
# so the code is the same as for the method-based syntax.