Skip to content

Feature: Add interactive filters in generated HTML (species / condition / height) #7

Description

@aplgr

Goal

Add user-facing filters to the generated offline HTML so users can focus on subsets, e.g.:

  • species (Art) filter
  • condition (Zustand) filter (range + quick toggles like “dead only” / “hide dead”)
  • height/size filter (range)

Why

In larger groves, it’s hard to spot patterns. Filters make the visualization much more useful without changing the underlying CSV format.

Scope (MVP)

  • Add a small “Filters” panel (collapsible) in the HTML UI.
  • Species: multi-select (derived from the dataset).
  • Condition: range slider + toggle for including/excluding 0 (dead) and “no data”.
  • Height: range slider.
  • Filters apply immediately (no reload) and work across timeline slices.
  • Persist filter settings in localStorage.

Acceptance criteria

  • Filters update the chart instantly (no page reload)
  • Timeline/slider still works with filters enabled
  • Tooltips and legends remain consistent
  • Default view (no filters) is unchanged
  • Settings persist across reload

Notes / hints

Implementation can be “hide points/cells” rather than re-computing the full dataset:

  • For scatter points: filter out entries before feeding ECharts or set them to hidden.
  • For heatmap cells: treat filtered-out cells as “no data” so the grid stays stable.
    Keep the UI calm/minimal (fits the existing aesthetic).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions