Javascript 未填充数据的Highcharts图形
我正试图在Highcharts的帮助下创建一些漂亮的html5图形 从OTRS API获取的数据 My index.html如下所示:Javascript 未填充数据的Highcharts图形,javascript,highcharts,otrs,Javascript,Highcharts,Otrs,我正试图在Highcharts的帮助下创建一些漂亮的html5图形 从OTRS API获取的数据 My index.html如下所示: <!DOCTYPE html> <head> <script src="https://code.jquery.com/jquery-1.9.1.min.js"></script> <script src="https://code.highcharts.com/highcharts.js"&
<!DOCTYPE html>
<head>
<script src="https://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>
<script src="/stats/otrs.js"></script>
</head>
<body>
<div id="chart" style="min-width: 310px; height: 800px; margin: 0 auto"></div>
<script type="text/javascript">
var otrs_url = 'https://otrs-server/otrs/nph-genericinterface.pl';
var otrs = new OTRS(otrs_url, 'api_user', 'password');
$(function () {
$('#chart').highcharts({
chart: {
type: 'bar'
},
data: {
rows: otrs.statsByQueueAndPriority(['Queue1', 'Queue2'], ['PRI1', 'PRI2'])
},
title: {
text: 'Queues - Priority'
}
});
});
</script>
</body>
var OTRS = function(api_url, username, password) {
this.api_url = api_url;
this.username = username;
this.password = password;
var self = this;
this.otrsRequest = function(api_endpoint, post_data) {
var url = this.api_url + api_endpoint;
console.log(url);
post_data['UserLogin'] = this.username;
post_data['Password'] = this.password;
$.ajax({
'url': url,
'type': 'POST',
'dataType': 'json',
'data': JSON.stringify(post_data)
})
};
this.statsByQueueAndPriority = function(queues, priorities) {
var endpoint = '/Webservice/JSON/Ticket/Search';
var results = [];
var newQueues = queues.slice();
newQueues.unshift(null);
results.push(newQueues);
priorities.forEach(function(priority){
var tmp = [];
tmp.push(priority);
queues.forEach(function(queue){
var api_data = {
'UserLogin': self.username,
'Password': self.password,
'Queues': [queue],
'Priority': priority
};
$.ajax({
'url': self.api_url + endpoint,
'type': 'POST',
'dataType': 'json',
'data': JSON.stringify(api_data)
})
.done(function(data) {
tmp.push(data.TicketID.length);
});
});
results.push(tmp)
});
console.log(results);
return results;
// returns: [[null, 'Queue1', 'Queue2'], ['PRI1', 312, 404] ['PRI2', 102, 201]]
};};
Highcharts标题显示出来了,所以我猜图表已经创建,但没有数据
如图所示。谁能告诉我正确的方向和方向
告诉我我做错了什么?如果你只是替换Highcharts的
数据会发生什么?
系列:[{data:[29.9,71.5,106.4,129.2,144.0,176.0,135.6,148.5,216.4,194.1,95.6,54.4]}],你的图表会显示数据吗?两个问题1)为什么你不能只调用ajax从URL提取数据,,不使用OTRS 2)您的OTRS变量是什么样子的?Rotan075:当我添加您建议的代码时,Highcharts正在显示一个图形。