【问题标题】:Highcharts "Cannot read property 'toFront' of undefined"Highcharts“无法读取未定义的属性'toFront'”
【发布时间】:2019-02-25 14:26:59
【问题描述】:

我有一个散点图,如果它符合我的条件,我会遍历每个点并将其放在前面,如下所示:

ptChart.series[0].points.forEach((point) => {
  if (point.options.is_big_town === 1) {
    point.select(true, true);
    point.graphic.toFront();
  }
});

但在某些时候我得到了错误:

未捕获的类型错误:无法读取属性 'toFront' of undefined

我发现有些点没有graphic方法但不知道为什么,这不是默认的吗?

编辑

现在我发现如果我从 X 和 Y 轴上移除最小/最大值,例如:

    yAxis: {
      title: { text: `${subject === 'pt' ? 'Português' : 'Matemática'} | [Nível de aprendizado]` },
      lineWidth: 1,
      gridZIndex: 0,
      // max: 2,
      // min: -2,
    },

一切正常。但现在我对正在发生的事情更加迷茫。

【问题讨论】:

  • 你能在 jsfiddle 这样的在线代码编辑器中准备一个演示吗?
  • 可见性设置为false 是偶然的吗?不可见点将没有graphic 属性
  • @WojciechChmiel 我正在尝试制作演示,但事情非常庞大,因为积分来自 api,而且我有一个过滤它的表单,实时版本可以帮助吗?
  • @JordanStubblefield,感谢您的猜测,但不幸的是,图表上的所有点始终可见,我只是切换它们为用户进行“视觉选择”。
  • 如果有帮助,这里是一个实时版本@WojciechChmiel (dev--wonderful-swanson-f65e38.netlify.com/dados),如果您更改“destacar por estado”选择id=state并选择“alagoas”选项,您会看到错误例如。

标签: javascript object methods highcharts


【解决方案1】:

好的,我终于找到了,特别感谢Jordan comment 为我指明了正确的方向。

点的可见性没有设置为false,但是XY轴设置了MaxMin范围,是什么导致一些点被渲染到图表区域之外并生成错误。

希望它可以帮助将来的人不要像我一样在这方面浪费 5 个小时。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-14
    • 2017-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    • 1970-01-01
    相关资源
    最近更新 更多