Visitar URL original
feat(core): add experimental _queryProps for Arrow aggregate-derived layer values by ibgreen · Pull Request #11101 · visgl/deck.gl · GitHub
Skip to content

feat(core): add experimental _queryProps for Arrow aggregate-derived layer values - #11101

Draft
ibgreen wants to merge 14 commits into
feat/internal-derived-layer-propsfrom
feat/experimental-query-props
Draft

ibgreen wants to merge 14 commits into
feat/internal-derived-layer-propsfrom
feat/experimental-query-props

Conversation

@ibgreen

@ibgreen ibgreen commented Nov 13, 2026

Copy link
Copy Markdown
Collaborator

Summary

Stacked on #11100. Introduces the experimental layer prop _queryProps, mapping existing numeric layer props to SQL-style aggregate expressions evaluated against an Apache Arrow table.

new ScatterplotLayer({
  data: arrowTable,
  _queryProps: {radiusScale: '100 / MAX(population)'},
  transitions: {radiusScale: 500}
});
  • Evaluates MIN / MAX / AVG / SUM / COUNT through math.gl's Arrow aggregate compiler, plus arithmetic via the portable expression evaluator.
  • Calls the protected setDerivedProps() from feat(core): support internal derived layer prop overrides #11100 with resolved numeric values, allowing ordinary prop diffing and uniform transitions.
  • Lazy-loads expression evaluation; preserves declarative props, ignores stale async query completions, and clears overrides when _queryProps is removed.
  • Numeric prop targets only; Arrow Table inputs only. No new changes to ComponentState or general SQL query execution.
  • Includes evaluator tests and API documentation.

Validation: Draft; builds/tests have not been executed here. Initial implementation rescans on input/query changes and does not yet maintain progressive accumulator state.

Dependency: #11100 must merge first or be rebased into this branch.

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant