javascript - 在 chart.js 中,如何知道 yAxes 刻度是否碰撞/渲染到另一个
问题描述
使用chart.js的版本是2.8.0(今天终于更新了^_^)
我试过了autoSkip: true
,autoSkipPadding: 10
但是这些 yAxes 刻度值不适用于对数刻度
由于我当前使用的是对数 yAxes,因此我们无法覆盖刻度步长值
我知道我可以使用on chartjs 文档的callback
函数来返回或完全不呈现 y 刻度值,但我需要知道定位是否触及另一个 y 刻度边界/边界框,如果你愿意的话,如果我想这样做/在我能够这样做之前yAxes
null
undefined
我知道这是个问题,但帆布不是我的强项——但 ;)
生病继续挖掘并尝试一些事情,但任何帮助表示赞赏!
干杯
解决方案
我必须进入 chart.js 库逻辑并添加我自己的自定义修改。我调用我自己的函数来返回一个布尔标志,说明我是否应该跳过当前要绘制的 y 轴,然后我将用于绘制的 currentY 值和绘制时使用的前一个 y 值传递给它
这个 Chart.js 库版本是 chartjs.2.2.2,我在 src/core/core.scale.js 中从下面的 if 语句中的代码中编辑并进行了这些自定义修改,如第 800 行给或取几百行: p
if (optionTicks.display) {
//...
}
也许这对其他人有帮助,祝你好运!
干杯
推荐阅读
- java - 如何使用 {} 在 JPA 查询中传递列表参数
- reactjs - 将孩子的类型定义为道具而不使用类型
- reactjs - 页面重新加载后保存复选框状态
- python - 在循环变量时获取产生最高/最低皮尔逊相关性的变量
- bash - 在 bash 脚本中存储多个变量
- javascript - 如何使用 js 为图表生成颜色?
- php - 查询错误消息有什么问题 {"errors":["undefined method `tempfile' for \"@/files/media/keywords.csv\":String"]}
- git - 获取最新 git commit 的标签
- asp.net - EntryPointNotFoundException:找不到入口点
- docker - 不能使用 Docker CLI 来管理绑定挂载?