Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

LayerFilter

A checkbox legend that filters a lonboard layer by category (writes filter_categories via the layer’s DataFilterExtension).

Import

from manywidgets.lonboard import LayerFilter

Example

from lonboard import Map, ScatterplotLayer
from lonboard.layer_extension import DataFilterExtension
from manywidgets import Column
from manywidgets.lonboard import LayerFilter

layer = ScatterplotLayer.from_geopandas(
    gdf,
    extensions=[DataFilterExtension(category_size=1)],
    get_filter_category=bands,          # one category per row
    filter_categories=[0, 1, 2, 3],
)
m = Map(layer, basemap=None)
legend = LayerFilter(layer, categories=[[0, "Shallow"], [1, "Mid"], [2, "Deep"], [3, "Very deep"]], label="Depth")

Column(legend, m)

API

TraitTypeDefaultDescription
layerInstanceThe lonboard layer to filter.
categoriesListScalars or [value, label] pairs, one per category.
valueListCurrently-enabled category values.
labelUnicode'Filter'Legend heading.
widget_idUnicode''Stable unique id used for cross-widget linking (auto-assigned).