visgl / visgl/deck.gl

[Bug] HeatmapLayer breaks when used with DataFilterExtension and other extensions

Open
#8,841 4 comments 8 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
14.6k
Forks
2.3k
Avg merge
2d 9h
Merged PRs (30d)
42

Description

Description

Hi - I noticed that the DataFilterExtension specifically calls out support with the Heatmap layer, however I am experiencing strange behaviour.

It seems as soon as a data range is applied, the heatmap fails to render.

Flavors
  • Script tag
  • React
  • Python/Jupyter notebook
  • MapboxOverlay
  • GoogleMapsOverlay
  • CartoLayer
  • ArcGIS
Expected Behavior

The heatmap render points that satisfy the filter

Steps to Reproduce

Please see a codepen example here
This uses the SF bikes data, and filters the data by spaces available.
Notice that if the range is changed to [0,10] the entire heatmap renders again. This is strange as there are lots of points in the range [1,10]

Environment
  • Framework version: 9.0.14
  • Browser: Chrome 124.0.6367.80
  • OS: MacOS
Logs

"luma.gl: Module picking not found"
"luma.gl: Unknown binding 'project32Uniforms' in render pipeline 'HeatmapLayer-triangle-layer-cached', expected one of 'maxTexture', 'weightsTexture', 'colorTexture'"
"luma.gl: Model(HeatmapLayer-triangle-layer): Missing layout for buffer 'filterValues'."
"luma.gl: Model(HeatmapLayer-triangle-layer): Missing layout for buffer 'instanceFilterValues'."
"luma.gl: Model 'HeatmapLayer-triangle-layer: Ignoring constant supplied for unknown attribute 'instancePickingColors'"
"luma.gl: Module picking not found"
"luma.gl: Unknown binding 'project32Uniforms' in render pipeline 'HeatmapLayer-triangle-layer-cached', expected one of 'maxTexture', 'weightsTexture', 'colorTexture'"

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure in the linked CodePen with HeatmapLayer and DataFilterExtension, especially when the range is [0,10]. Start by tracing the HeatmapLayer and DataFilterExtension entry points against the reported luma.gl pipeline and buffer errors; done means filtered points render without those errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
data-visualization
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.