Skip to content

Conversation

@archiewood
Copy link

@archiewood archiewood commented Nov 12, 2025

Brief Information

This pull request is in the type of:

  • bug fixing
  • new feature
  • others

What does this PR do?

fixes #21371 dataZoom + stacked series + scale causing missing datapoints.

Fixed issues

#21371

Details

Before: What was the problem?

DataZoom calculated valueWindow from stacked extents but filtered using original (unstacked) dimension values, causing incorrect point removal.

After: How does it behave after the fixing?

Transform dimensions to use stackResultDimension before filtering.

Document Info

One of the following should be checked.

  • This PR doesn't relate to document changes
  • The document should be updated later
  • The document changes have been made in apache/echarts-doc#xxx

Misc

Security Checking

  • This PR uses security-sensitive Web APIs.

ZRender Changes

  • This PR depends on ZRender changes (ecomfe/zrender#xxx).

Related test cases or examples to use the new APIs

N.A.

Merging options

  • Please squash the commits into a single one when merging.

@echarts-bot
Copy link

echarts-bot bot commented Nov 12, 2025

Thanks for your contribution!
The community will review it ASAP. In the meanwhile, please checkout the coding standard and Wiki about How to make a pull request.

Please DO NOT commit the files in dist, i18n, and ssr/client/dist folders in a non-release pull request. These folders are for release use only.

To reviewers: If this PR is going to be described in the changelog in the future release, please make sure this PR has one of the following labels: PR: doc ready, PR: awaiting doc, PR: doc unchanged

This message is shown because the PR description doesn't contain the document related template.

@archiewood
Copy link
Author

archiewood commented Nov 18, 2025

updated to conform to PR template

}

zrUtil.each(dataDims, function (dim, index) {
dataDims[index] = getStackedDimension(seriesData, dim);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be unexpected to me because this makes const dataDims = seriesData.mapDimensionsAll(axisDim); almost useless.

Found these comments might be related. @100pah Please help review this PR.

Copy link
Author

@archiewood archiewood Nov 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be unexpected to me because this makes const dataDims = seriesData.mapDimensionsAll(axisDim); almost useless.

  • The mapDimensionsAll(axisDim) call is necessary to get all dimensions that map to this axis.
  • Then getStackedDimension() transforms each dimension to its stacked result dimension only if that dimension is stacked - otherwise it returns the original dimension unchanged.

an alternative would be maybe to define dataDims like this, and then not overwrite the elements later, I was just concerned this would be less clear

const dataDims = zrUtil.map(
      seriesData.mapDimensionsAll(axisDim),
      dim => getStackedDimension(seriesData, dim)
  );

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] dataZoom hides datapoints when using stacked lines

2 participants