複数のajaxデータをロードしてシリアルグラフを作成しようとしています。これまで私はこれをやっている人は見ていませんでしたが、私は似たような例をオンラインで使うことができました。結果の問題は、ロードに時間がかかり、すべてのデータが一緒にクラスタ化されるということです。各ajaxから返された各データを特定のグラフにロードする方法はありますか(ステータスとカウンタだけが返されます)Amcharts複数のajaxデータをデータプロバイダとして直列にロードする
$(document).ready(function() {
var chartDataResults = new Array();
$.ajax({
type: "POST",
contentType: "application/json",
url: "../NewProjectEdit.aspx/bronxBind",
async: false,
dataType: 'json',
success: function(data) {
generateChartData(data.d);
}
});
$.ajax({
type: "POST",
contentType: "application/json",
url: "../NewProjectEdit.aspx/brooklynBind",
async: false,
dataType: 'json',
success: function(data) {
generateChartData(data.d);
}
});
$.ajax({
type: "POST",
contentType: "application/json",
url: "../NewProjectEdit.aspx/manhattanBind",
async: false,
dataType: 'json',
success: function(data) {
generateChartData(data.d);
}
});
$.ajax({
type: "POST",
contentType: "application/json",
url: "../NewProjectEdit.aspx/queensBind",
async: false,
dataType: 'json',
success: function(data) {
generateChartData(data.d);
}
});
$.ajax({
type: "POST",
contentType: "application/json",
url: "../NewProjectEdit.aspx/statenIslandBind",
data: '{}',
async: false,
dataType: 'json',
success: function(data) {
generateChartData(data.d);
}
});
function generateChartData(dataValues) {
for (var i = dataValues.length - 1; i >= 0; --i) {
console.log(dataValues[1]);
var chartItems = dataValues[i];
var chartStatus = chartItems.status
var chartCounter = chartItems.counter
chartDataResults.push({
status: chartStatus,
counter: chartCounter
});
var chart = AmCharts.makeChart("chartdiv", {
"type": "serial",
"theme": "light",
"depth3D": 20,
"angle": 30,
"legend": {
"horizontalGap": 10,
"useGraphSettings": true,
"markerSize": 10
},
"valueAxes": [{
"stackType": "regular",
"axisAlpha": 0,
"gridAlpha": 0
}],
"dataProvider": chartDataResults,
"graphs": [{
"balloonText": "<b>[[title]]</b><br><span style='font-size:14px'>[[category]]: <b>[[value]]</b></span>",
"fillAlphas": 0.8,
"labelText": "[[value]]",
"lineAlpha": 0.3,
"title": "Bronx",
"type": "column",
"color": "#000000",
"valueField": "counter"
}, {
"balloonText": "<b>[[title]]</b><br><span style='font-size:14px'>[[category]]: <b>[[value]]</b></span>",
"fillAlphas": 0.8,
"labelText": "[[value]]",
"lineAlpha": 0.3,
"title": "Brooklyn",
"type": "column",
"color": "#000000",
"valueField": "counter"
}, {
"balloonText": "<b>[[title]]</b><br><span style='font-size:14px'>[[category]]: <b>[[value]]</b></span>",
"fillAlphas": 0.8,
"labelText": "[[value]]",
"lineAlpha": 0.3,
"title": "Manhattan",
"type": "column",
"color": "#000000",
"valueField": "counter"
}, {
"balloonText": "<b>[[title]]</b><br><span style='font-size:14px'>[[category]]: <b>[[value]]</b></span>",
"fillAlphas": 0.8,
"labelText": "[[value]]",
"lineAlpha": 0.3,
"title": "Queens",
"type": "column",
"color": "#000000",
"valueField": "counter"
}, {
"balloonText": "<b>[[title]]</b><br><span style='font-size:14px'>[[category]]: <b>[[value]]</b></span>",
"fillAlphas": 0.8,
"labelText": "[[value]]",
"lineAlpha": 0.3,
"title": "Staten Island",
"type": "column",
"color": "#000000",
"valueField": "counter"
}],
"categoryField": "status",
"categoryAxis": {
"gridPosition": "start",
"axisAlpha": 0,
"gridAlpha": 0,
"position": "left",
"labelRotation": -45
},
"export": {
"enabled": true
}
});
}
}
});
#chartdiv {
width: 100%;
height: 100%;
}
.amcharts-export-menu-top-right {
top: 10px;
right: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="chartdiv" background-color: #FFFFFF; " ></div>

ありがとうございました。私はそれを働かせることができました。 – Kunle