apache / echarts

Apache ECharts is a powerful, interactive charting and data visualization library for browser
https://echarts.apache.org
Apache License 2.0
60.64k stars 19.61k forks source link

[Bug] Panning is broken in the multi-dataset public treemap example "How $3.7 Trillion is Spent" #20361

Open erosca opened 1 month ago

erosca commented 1 month ago

Version

5.5.1

Link to Minimal Reproduction

https://echarts.apache.org/examples/en/editor.html?c=treemap-obama&lang=js&version=5.5.1

Steps to Reproduce

  1. Open public example: https://echarts.apache.org/examples/en/editor.html?c=treemap-obama&lang=js&version=5.5.1
  2. Hold left mouse click, make sure that panning works on the dataset opened by default (2012Budget)
  3. Switch to 2011Budget by pressing the button in the Legend. Panning by left-mouse-click-hold still works.
  4. Switch back to 2012Budget. Panning no longer works. Position of the chart is fixed.

Current Behavior

See "Steps to Reproduce"

Expected Behavior

Panning by mouse click should work regardless how many times you switch between legend datasets/tabs.

Environment

- OS: Ubuntu 22.04
- Browser: Firefox 130.0.1, Chrome 128.0.6613.137
- Framework: https://echarts.apache.org/

Any additional comments?

No response

helgasoft commented 1 month ago

confirmed bug in treemap. It seems legend switch resets roam to false. Series types tree and graph are not affected. Demo

erosca commented 1 month ago

@helgasoft Do you have any feeling how serious the issue is (looks like it's deep in the core implementation) and do you know if there is anyone likely to provide some guidance on the way to fixing it?

helgasoft commented 1 month ago

My feeling is that this bug is low priority and heavy workload, and wont be fixed anytime soon. Would love to be wrong though...

erosca commented 1 month ago

Thanks @helgasoft . Sounds like a detour to d3 is unavoidable in this case, since switching between tabs (w/o losing panning/zooming) is a core feature in my personal application/use-case.

helgasoft commented 1 month ago

d3 is a big bag to carry. CSS is simpler, just some way of keeping charts separate and avoid legend - Demo.

erosca commented 1 month ago

d3 is a big bag to carry. CSS is simpler, just some way of keeping charts separate and avoid legend - Demo.

Cool. Wonderful insight and advice 👍. Appreciated 🙏.

helgasoft commented 1 month ago

actually, legend can be replaced with graphic buttons (or toolbar custom buttons) - Demo

erosca commented 1 month ago

actually, legend can be replaced with graphic buttons (or toolbar custom buttons) - Demo

Great tip for those who will be running into the same issue and will hopefully find this page.