我正在尝试使用 highcharts 创建自定义选择器。根据点击右上角的按钮,我需要调用输出不同数据集的不同 php 文件。例如,以下脚本仅读取一个文件并根据一个文件数据进行放大/缩小。我有 6 个不同的文件,1)一天 5 分钟的数据 2)一个月的每小时数据,3)3 个月的每日数据 4)6 个月的每周数据等。基于单击左上角的按钮我需要发出这样的事情:
我正在尝试创建自己的按钮作为这个 jsfiddle 但在每个按钮中我需要调用另一个外部文件来绘制我的图表:http: //jsfiddle.net/YQnJM/4/
我尝试过这样的事情:
(function() {
var genOptions = function(data) {
return {
chart : {
renderTo : 'container'
},
rangeSelector : {
enabled:false
},
series : data
};
}
$.getJSON('db.php', function(data) {
var options = genOptions(data);
var chart = new Highcharts.StockChart(options);
normalState = new Object();
normalState.stroke_width = null;
normalState.stroke = null;
normalState.fill = null;
normalState.padding = null;
normalState.style = hash('text-decoration', 'underline');
hoverState = new Object();
hoverState = normalState;
pressedState = new Object();
pressedState = normalState;
chart_1DButton = chart.renderer.button('1D', 52, 10, function() {
var date = Date.now();
var date2 = new Date();
date2.setHours(0);
date2.setMinutes(0);
date2.setSeconds(0);
date2.setMilliseconds(0);
chart.xAxis[0].setExtremes(date2, date, true);
$.ajaxSetup({ cache: false });
$.getJSON('db_cpu_1_day.php', function(data1) {
options.series[0].setData(data1);
});
unselectButtons();
chart_1DButton.setState(2);
}, normalState, hoverState, pressedState);
chart_1DButton.add();
function unselectButtons() {
chart_1DButton.setState(0);
}
});
});