Chart 调度中心
重要数据
scrollLeft:图表水平方向上的滚动偏移
更新数据并重绘
ts
private data: KLineData[] = []
updateData(data: KLineData[]) {
console.log('[Chart] updateData called, data length:', data?.length)
this.data = data ?? []
// 重算 DOM scrollLeft 状态, 防止左右滚动超出数据长度范围
const container = this.dom.container
if (container) {
const contentWidth = this.getContentWidth()
const maxScrollLeft = Math.max(0, contentWidth - container.clientWidth)
if (container.scrollLeft > maxScrollLeft) {
container.scrollLeft = maxScrollLeft
}
}
// 通知所有渲染器数据已更新(清除缓存等)
this.rendererPluginManager.notifyDataUpdate(this.data, { start: 0, end: this.data.length })
// 重置交互状态
this.interaction.reset()
this.scheduleDraw()
}- 重算 scrollLeft
- 清除渲染器缓存