您好我想问一下如何在Highcharts中正确实例化和处理动态添加的系列。
我带来了一个像这样的系列实例:
var newSeries = new Highcharts.Series();
var newData = [];
date = Date.parse(newDate() +' UTC');
name = 'datapoint name';
newData.push([date, name]);
newSeries.name = 'Somename';
//newData variable processing
newSeries.data = newData;
newSeries.color = "#EEEEEE";
newSeries.showInLegend = false;
newSeries.index = -1;
chart.addSeries(newSeries);
使用此代码,我能够在Highchart对象运行时中添加新系列。但是,在将其添加到实际图表之前,我想对我的系列对象进行一些额外的处理。
我试过了:
newSeries.marker.enabled = "false";
newSeries.marker.states.hover = "false";
newSeries.index = -1; //to be able to send the series at the backmost part of the chart
但未能达到预期的效果。
如果可能,有人可以指出我正确的方向如何正确实例化series
对象里面的marker
对象吗?
非常感谢任何帮助。
编辑:GREG的正确回答
答案 0 :(得分:1)
如果将每个点添加为对象,则可以按如下方式控制标记:
function addSeries(chart) {
var newSeries = new Highcharts.Series();
newSeries.name = 'Tokyo';
newSeries.data = [{y: 1}, {y:20}, {y:23}, {y:11}];
newSeries.zIndex = -1;
for (var i = 0; i < newSeries.data.length; i++) {
var datum = newSeries.data[i];
datum.marker = {
enabled: false,
states: {
hover: {
enabled: false,
lineColor: '#ff0000'
}
}
};
}
chart.addSeries(newSeries);
}
以下是一个有效的例子:http://jsfiddle.net/LrvB9/