Zing Chart 的十字准线功能泄漏 CPU

Crosshair feature of Zing Chart is leak CPU

当我在我的图表中启用十字准线功能时,在 Chrome 56 中一切正常,但是当我将 Chrome 升级到 57 时(甚至 chrome 58 和 ZingChart 2.6.0现在),CPU 悬停在图表上以查看十字准线时,使用率始终高于 25%。当我有 2 个图表时,CPU 使用率上升到 99%,浏览器很快变慢并崩溃。

我尝试禁用所有功能以查看导致此问题的原因,当我禁用十字准线时,CPU 使用又正常了。如果我禁用除十字准线功能以外的所有功能,则会观察到相同的 CPU 占用效应。

释放资源的唯一方法是终止选项卡。

这是我的代码:

var dataChart = {
  id: "ShSDbePYhAxC",
  data: {
    type: "area",
    "crosshair-x": {
      "plot-label": {
        text: "The %t Series has a value of %v."
      }
    },
    gui: {
      behaviors: [
        {
          id: "Reload",
          enabled: "none"
        }
      ],
      contextMenu: {
        customItems: [
          {
            function: "zingAlert()",
            id: "zingAlert",
            text: "zing Alert"
          }
        ]
      }
    },
    item: {
      angle: -30
    },
    legend: {
      "background-color": "white",
      "border-color": "black",
      "border-radius": "5px",
      "border-width": 2,
      layout: "1xauto",
      padding: "10%",
      x: "12%",
      y: "90%"
    },
    plot: {
      alphaArea: 1,
      aspect: "spline",
      "bar-width": "15px",
      "contour-on-top": false,
      lineWidth: "2px",
      stacked: true,
      marker: {
        visible: false
      },
      tooltip: {
        visible: false
      }
    },
    plotarea: {
      "margin-bottom": "23%",
      "margin-left": "dynamic"
    },
    "scale-x": {
      item: {
        angle: -30
      },
      labels: [
        "Name0", "Name1", "Name2", "Name3", "Name4"
      ]
    },
    "scale-y": {
      label: {
        "font-size": "15%",
        text: "Number Of Visitors"
      }
    },
    series: [
      {
        text: "Text A",
        values: [11111, 222222, 3333333, 444444, 55555]
      },
      {
        text: "Text B",
        values: [6666, 777777, 88888, 99999, 12121212]
      }
    ]
  },
  height: 550,
  output: "canvas",
  width: "100%",
}

所以我们一直倾向于认为这可能是 chrome 和 Angular 的问题。为了确认这一点,您可以将您的 zingchart 版本恢复到旧版本,如 v2.2.2。您可以通过以下链接的 cdn 访问此版本

根目录: http://cdn.zingchart.com/2.2.2/

ZingChart.min: http://cdn.zingchart.com/2.2.2/zingchart.min.js

模块: http://cdn.zingchart.com/2.2.2/modules/

如果问题仍然存在,那是浏览器和 Angular 的问题,我们知道应该把精力集中在哪里。如果问题消失,则直接是 ZingChart 问题。