gpt4 book ai didi

javascript - Highchart 不显示图表 : error adding javascript array in series

转载 作者:行者123 更新时间:2023-12-02 18:31:48 25 4
gpt4 key购买 nike

我正在使用 Highcharts 中的条形图绘制人口信息。我使用 Ajax 调用获取数据并将它们存储在数组中

 $(document).ready(function(){
var url = 'zone.php';
var zone_name = [];
var male_pop = [];
var female_pop = [];
$.getJSON(url, function(data) {
$.each(data, function(index, data) {
zone_name.push(data.name);
male_pop.push(parseInt(data.pop_male));
female_pop.push(parseInt(data.pop_female));
});
});

当我使用这些数据绘制图表时,图表不显示。

$('#chart').highcharts({
chart: {
type: 'bar'
},
title: {
text: 'Popolution of Nepal zone wise'
},
subtitle: {
text: 'Source: cbs.gov.np'
},
xAxis: {
categories: zone_name,
title: {
text: null
}
},
yAxis: {
min: 0,
title: {
text: 'Population',
align: 'high'
},
labels: {
overflow: 'justify'
}
},
tooltip: {
valueSuffix: ''
},
plotOptions: {
bar: {
dataLabels: {
enabled: true
}
}
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'top',
x: -100,
y: 100,
floating: true,
borderWidth: 1,
backgroundColor: '#FFFFFF',
shadow: true
},
credits: {
enabled: false
},
series: [{
name: 'Male Population',
data: male_pop
}, {
name: 'Female Population',
data: female_pop
}, {
name: 'Total Population',
data: male_pop
}]
});
});

错误出现在series部分。分配data:male_pop 不起作用。我怎样才能克服这个错误?

编辑:控制台上male_pop数组的输​​出是

0: 676960
1: 1122885
2: 990638
3: 1401822
4: 1939350
5: 1500452
6: 706243
7: 1344568
8: 241786
9: 195827
10: 831283
11: 679340
12: 754277
13: 463610

最佳答案

我猜问题是由于 $.getJSON 的异步性质造成的,当您之后调用: $('#chart').highcharts({ )服务器的响应尚未到达。尝试将其更改为:

$.getJSON(url, function(data) {
$.each(data, function(index, data) {
zone_name.push(data.name);
male_pop.push(parseInt(data.pop_male));
female_pop.push(parseInt(data.pop_female));
});

// $('#chart').highcharts({
});

关于javascript - Highchart 不显示图表 : error adding javascript array in series,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17724040/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com