Watermelon
Watermelon
我已经实现了滚动刷新功能,并且有动画。我现在希望更改滚动的动画时间
应该是我最开始的表述不够清楚。我重新表达一下,我已经找到了设置动画时间的方法 我从这个方法跟进去了 ` // 第一步 aa_onlyRefreshTheChartDataWithChartOptionsSeries // 第二步 let jsStr = "onlyRefreshTheChartDataWithSeries('\(str)','\(animation)');" safeEvaluateJavaScriptString(jsStr) // 第三步 function onlyRefreshTheChartDataWithSeries(receivedSeries, animation) { let receivedSeriesArr = JSON.parse(receivedSeries); let animationBool = (animation === "true"); aaGlobalChart.update({...
> > 比如说 3000 毫秒更新一个点,动画时间是 2800-3000 毫秒,这时候,折线在滚动的同时,就会出现奇怪的蠕动动画效果。 > > 这个看起来应该是 Y 轴坐标系一致在变化, 导致图表的坐标点也一直反复更新重绘, 最终导致的视觉上的**蠕动**的效果. > > 固定 Y 轴坐标不变应该能解决这个问题. > > * 示例代码如下: > > let aaOptions = aaChartModel.aa_toAAOptions() >...
[ChartDemo.zip](https://github.com/user-attachments/files/21522021/ChartDemo.zip) 我写了一个简单的 demo。DataManager 有一个 3s 的定时器一直产生新数据,然后在 DataChartView 的 reloadData 方法里去刷新数据,我已经将 onlyRefreshTheChartDataWithSeries 方法内部的动画替换为时间 { 'duration': 3000 } 我上面发的两个问题都能出现,如果你把时间改为 2500 则蠕动效果就不会出现。
> > Highcharts 的内置的滚动刷新方法, 应该是支持设置动画时间的. > > 参考: > > > > * https://api.highcharts.com/class-reference/Highcharts.Series#addPoint > > 你的 demo 我测试了一下, 主要问题应该是没有使用我上面提到的, Highcharts 专门提供的用于滚动刷新的方法. > > 我在 AAChartKit-Swift 的 demo 中, 已经根据你的...
> > 在这个在线示例中, 如果你点击Add Point测试按钮速度过快(小于 0.6s 左右)的话, 也一样会蠕动, 这个问题目前无解(除非直接关闭滚动刷新的动画效果). > > 仔细测试发现其实修改滚动刷新动画效果的 `duration`, 使之尽可能的小, 也是能够避免蠕动效果的. 但是目前在 AAChartKit-Swift中, 滚动刷新的 API 还没有支持自定义动画效果的 `duration`. > > 目前情况下, 只要设置滚动刷新的更新时间大于等于 `0.52s`, 就可以正常实现需求了. 看来这个问题只能通过控制时间来兼容了。不知道有没有计划让 API 支持设置...
还有一个问题,现在从 `aa_addPointToChartSeriesElement` 换成了 `aa_addPointToChartSeriesElement` ,如果我还需要在表格上添加一条虚线,并且这条虚线跟着定时器新数据过来会去移动 y 轴的位置,能实现吗 ``` let lineData = Array(repeating: AADataElement().y(100), count: maxcount) let lineElement = AASeriesElement() .type(.line) .data(lineData) .color("#FFAA00") .lineWidth(1) .dashStyle(.dash) ```
感谢大佬为爱发电