antvis / S2

⚡️ A practical visualization library for tabular analysis.
https://s2.antv.antgroup.com
MIT License
1.46k stars 193 forks source link

fix: 处理自定义mini图显示柱状图时,全为正值&全为零值 展示异常问题 #2826

Closed duganlx closed 1 month ago

duganlx commented 1 month ago

👀 PR includes

✨ Feature

🎨 Enhance

🐛 Bugfix

🔧 Chore

📝 Description

这次改动主要是处理用使用 mini画柱状图时,在数据全为正值和全为零值时,柱状图展示异常问题。在单元格内绘制 mini 柱状图时,计算每个坐标转换的函数有点问题,如下图所示。 image

上图框起来的部分需要分情况分别考虑 barHeight 和 positionY:1. 数据全为正、2. 数据全为零、3. 数据全为负,修改如下图所示。 image

🖼️ Screenshot

改版前后的对比图如下所示。覆盖了以下常见都没有问题了。

  1. 数据全为正
  2. 数据全为负
  3. 数据全为零
  4. 数据有正有负
  5. 数据有正有负有零

image

Before After

🔗 Related issue link

🔍 Self-Check before the merge

vercel[bot] commented 1 month ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
antvis-s2 ❌ Failed (Inspect) Jul 20, 2024 0:58am
lijinke666 commented 1 month ago

感谢贡献, 单测挂了, 请修复并完善下相关单测.

duganlx commented 1 month ago

感谢贡献, 单测挂了, 请修复并完善下相关单测.

我在本地按照readme文件中说明运行单测时,始终会卡在那里,如下图所示。我尝试了 pnpm testpnpm core:testpnpm test:ci-coverage 都会卡住,我不太清楚如何处理。 image

没有进行其他额外的操作,复现方式就是

  1. git clone git@github.com:duganlx/S2.git 并切换到 fix-minichart分支
  2. pnpm install
  3. pnpm build
  4. pnpm test (此时就卡住了)

我的运行环境是在 docker的一个 ubuntu 容器

lijinke666 commented 1 month ago

我的运行环境是在 docker的一个 ubuntu 容器

jest-electron 应该不支持, 所以卡住了, 那合并后我来处理下单测吧, 感谢你的贡献.

duganlx commented 1 month ago

jest-electron 应该不支持, 所以卡住了, 那合并后我来处理下单测吧, 感谢你的贡献.

ok,谢谢您 ^_^

lijinke666 commented 1 month ago

:tada: This PR is included in version @antv/s2-v2.0.0-next.26 :tada:

The release is available on:

Your semantic-release bot :package::rocket: