首页 > 解决方案 > 控制何时在 HighCharts 中使用升压模式?

问题描述

我在我的应用程序中包含了 boost.js 模块。默认情况下,这会根据某些阈值启用升压模式。我想控制何时启动热图的增强模式。我发现以下 3 个选项。文档有点混乱。这些选项有什么区别?如果希望无论数据点数量如何都始终启用增强模式,我应该使用哪一个?

  1. plotOptions.series.turboThreshold
  2. boost.seriesThreshold
  3. plotOptions.series.boostThreshold

标签: javascriptchartshighchartsheatmap

解决方案


1.plotOptions.series.turboThreshold _

此设置与 boost 模块无关,正如 API 所述,这仅适用于数据配置为数组的系列。并且将在不需要 boost 模块的情况下加速这些情况:

当一个系列包含比此更长的数据数组时,只允许使用一维数字数组或具有 x 和 y 值的二维数组。此外,仅测试第一个点,其余部分假定为相同格式。这可以节省昂贵的长系列数据检查和索引。将其设置为 0 禁用。

2. boost.seriesThreshold

此设置根据存在的系列数量启用升压模式。不管每个系列有多少点。

设置升压应该在全球范围内启动的系列阈值。

如果有 20 个或更多系列活动,设置为例如 20 将导致整个图表进入增强模式。当图表处于增强模式时,其中的每个系列都将呈现到一个公共画布上。这在具有大量系列的图表中提供了显着的速度改进。

3.plotOptions.series.boostThreshold _

这是系列类型特定或全局设置。您可以将此应用于一种系列类型或所有系列类型。

设置系列何时应进入升压模式的点阈值。

将其设置为例如 2000 将导致系列在系列中有 2000 个或更多点时进入增强模式。

要禁用系列的提升,请将 boostThreshold 设置为 0。将其设置为 1 将强制提升。

4. series.seriesType.boostThreshold

这是 3 的本地版本。在这里您可以将 boost 应用于特定系列。


如果您想始终使用增强模式,请设置 3. 如 API 中所述:

Highcharts.chart('container', {
  plotOptions: {
    series: {
      boostThreshold: 1
    }
  },
  ...
}

JSFiddle 示例: https ://jsfiddle.net/ewolden/bxkqv38a/1/


推荐阅读