我在这里看到了一些建议,但似乎没有什么适用于我的情况。我还看到了一些未解决的类似问题。我有很多数据(大约 40k)点的散点图。它真的很慢。下面的链接(遗传数据 - 称为曼哈顿图)最终会加载,但速度很慢。我需要找到一种优化性能的方法。
http://ricediversity.org/test/highcharts/examples/line-ajax/index-b.htm
此外,我正在尝试从我的数据文件向我的工具提示添加其他信息(数据字段),但我也无法使其正常工作。有什么建议么?
我在这里看到了一些建议,但似乎没有什么适用于我的情况。我还看到了一些未解决的类似问题。我有很多数据(大约 40k)点的散点图。它真的很慢。下面的链接(遗传数据 - 称为曼哈顿图)最终会加载,但速度很慢。我需要找到一种优化性能的方法。
http://ricediversity.org/test/highcharts/examples/line-ajax/index-b.htm
此外,我正在尝试从我的数据文件向我的工具提示添加其他信息(数据字段),但我也无法使其正常工作。有什么建议么?
您可以尝试禁用动画/阴影。
http://api.highcharts.com/highcharts#chart.animation http://api.highcharts.com/highcharts#plotOptions.series.animation http://api.highcharts.com/highcharts#tooltip.animation http://api.highcharts.com/highcharts#tooltip.animation /api.highcharts.com/highcharts#plotOptions.series.shadow
至于工具提示,请查看highcharts data api,特别是列表中的第 2 位。如果这不适合您,您可以传入一个对象数组,在其中指定要获取的数据。然后,在格式化程序中,很容易引用。这是一个 JSfiddle,展示了如何在名称位于您的数据数组中时引用它们。
格式化程序是
formatter: function () {
var s = "";
$.each(this.points, function (i, point) {
s += point.point.nameList[0];
});
return s;
}
数据集如下所示:
data = [ ...,
{x: xval, y: yval, nameList: myListOfNames},
...]
其中xval
和yval
是数据点的 x 和 y 值,并且myListOfNames
是字符串数组。
这里有一些关于在 highcharts 网站上优化性能的提示:http: //docs.highcharts.com/#faq $optimize-performance
但是,有了这么多点,我会考虑使用 highstock。没有办法弄清楚这么多点的细节,所以以某种方式聚合它们会制作出更好的图表(http://docs.highcharts.com/#data-grouping)。
也许为时已晚,无法使用(示例链接不再有效,所以我不确定这是否适用),但是有一个新的 Highcharts 插件可以对时间序列数据进行下采样,以保留原始数据的形状。
http://www.highcharts.com/plugin-registry/single/13/Highcharts-Downsample