echarts [Bug] Toggling label.show does not behave correctly when hovering over a bar in the barChart

m2xkgtsf  于 2个月前  发布在  Echarts
关注(0)|答案(2)|浏览(72)

Version

5.5.1

https://codepen.io/robin-gerling/pen/abgYVLZ

Steps to Reproduce

  1. Initialization: Simple option containing only data for the bar chart and label.show = true for the series
  2. Update the option with chart.setOption(option); (by clicking on "Toggle bar values" in the minimal reproduction)
  3. Hover over the bars

Current Behavior

The label for a bar appears when hovering over the bar even though label.show is false.
In case the initial value for label.show is true and the option is changed to true , the label for a bar will hide when hovering over the bar.

Expected Behavior

When label.show = false the labels should be not shown at any time (and not appear on hover).
When label.show = true the labels should be shown at any time (and not disappear on hover).

Environment

- OS:
- Browser:
- Framework:

Any additional comments?

Could be related to #17554 .
However, #17554 , additionally sets labelLayout.hideOverlap .

The minimal reproduction contains two buttons. Pressing "Clear chart & Toggle bar values" additionally clears the chart ( chart.clear(); ). Clearing helps resolving this bug.

x7yiwoj4

x7yiwoj41#

The label for a bar appears when hovering over the bar even though label.show is false.

this effect comes from emphasis.label.show
Labels and emphasis switch fine - Demo
📌 please close issue if problem solved.

3hvapo4f

3hvapo4f2#

Thank you for the quick answer. This solves the problem. But, I would argue that this is a workaround, as is clearing the chart, because when the chart is initialized, emphasis.label.show takes the value of label.show . I would therefore expect the same when changing label.show and keep the issue open (except it is confirmed that setting emphasis.label.show is expected wanted behaviour).
However, setting emphasis.label.show is a much better workaround than having to clear the chart.

相关问题