Chart.js缩放从放大开始

时间:2017-04-07 16:02:21

标签: javascript charts chart.js zoom

我使用Chart.js和Zoom插件构建了一个折线图。这一切都很好,它很好地平移和缩放,但是,图表总是加载完整的数据范围,我希望它开始“缩放”n量。 我试图调整设置,但无济于事。 在这个阶段的任何指针都将非常感激。

2 个答案:

答案 0 :(得分:1)

最后解决了这个问题。

在缩放选项部分中,您需要在与缩放功能一起使用时添加一个最小整数,然后仍然将图形渲染到画布之外,准备进行平移。

scales: {
         xAxes:[
                 {
                    type: 'time',
                    time: {
                    min: '2',
                    tooltipFormat: 'll',
                    displayFormats: {
                    quarter: 'MMM YYYY',
                }
            },

只要你的" Type"是时候这对我有用了。

答案 1 :(得分:1)

ChartJS没有内置的setZoom方法。总结ChartJS缩放插件限制的问题:https://github.com/chartjs/chartjs-plugin-zoom/issues/82

这是一种将鼠标滚轮事件发送到图表并进行缩放的黑客方式:

let e = document.createEvent('MouseEvents')
e.initEvent('wheel', true, true)
e.deltaY = -10e20;
setTimeout(() => {
  for(let i=0;i<70;i++)
    canvas.dispatchEvent(e);
}, 500);

希望这会有所帮助。