Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(boxplot) correctly handle series.encode with category axis #20324

Merged
merged 2 commits into from
Sep 25, 2024

Conversation

jonoshearman
Copy link
Contributor

Brief Information

This pull request is in the type of:

  • bug fixing
  • new feature
  • others

What does this PR do?

Fixes issue with series.encode for boxplot when category axis is used.

Fixed issues

#20319

Details

Before: What was the problem?

When a category axis is used for a boxplot series, an ordinalValue is always inserted to the series.data which breaks any encoding rules. if the category axis does not set it's own data then the axis labels will be the integer ordinalValue.

After: How does it behave after the fixing?

Now if an encode rule is applied for the associated axis (x/y) then the ordinalValue is not inserted and the encoding rules work as expected.

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

ZRender Changes

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

Related test cases or examples to use the new APIs

test/boxplot-category.html added to show visual example.

Others

Merging options

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

Other information

Copy link

echarts-bot bot commented Sep 5, 2024

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.

@jonoshearman jonoshearman changed the title feat(boxplot) correctly handle series.encode with category axis fix(boxplot) correctly handle series.encode with category axis Sep 10, 2024
Copy link
Contributor

github-actions bot commented Sep 20, 2024

The changes brought by this PR can be previewed at: https://echarts.apache.org/examples/editor?version=PR-20324@399fb2f

Copy link
Contributor

@Ovilia Ovilia left a comment

Choose a reason for hiding this comment

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

Thanks for your contribution. Please fix the lint problems.

*/
_hasEncodeRule(key: string) {
const encodeRules = this.getEncode();
if(encodeRules?.data?.has(key))
Copy link
Contributor

Choose a reason for hiding this comment

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

We avoid using ?. under compatible considerations. Please use encodeRules && encodeRules.data && encodeRules.data.has(key) instead.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks for the review @Ovilia
Changes pushed.

@Ovilia Ovilia added this to the 5.5.2 milestone Sep 20, 2024
Copy link
Contributor

@Ovilia Ovilia left a comment

Choose a reason for hiding this comment

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

There's just a minor issue. Everything else seems fine to me.

_hasEncodeRule(key: string) {
const encodeRules = this.getEncode();
if (encodeRules && encodeRules.data && encodeRules.data.has(key)) {
return encodeRules.data.get(key) !== null;
Copy link
Contributor

Choose a reason for hiding this comment

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

Using != instead of !== please.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks, changes pushed

@Ovilia
Copy link
Contributor

Ovilia commented Sep 23, 2024

Please don't use forced push because it would be hard to track the changes of previous reviews.

@Ovilia Ovilia merged commit 2c6ecb0 into apache:master Sep 25, 2024
2 checks passed
Copy link

echarts-bot bot commented Sep 25, 2024

Congratulations! Your PR has been merged. Thanks for your contribution! 👍

@Ovilia
Copy link
Contributor

Ovilia commented Sep 25, 2024

We sincerely appreciate your valuable contributions! We are currently running a special promotion for users who submit a Pull Request between September 25, 2024, and December 31, 2024. Eligible participants will receive a two-year enterprise membership to Baidu Comate, valued at 2000 RMB (approximately 285 USD).

To learn more about this product, please visit https://comate.baidu.com/. If you are interested in this offer, kindly send an email with the link to your Pull Request along with your Comate username and email address to ovilia@apache.org to claim your membership.

Thank you once again for your support!

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.

2 participants