0 レビュー
2 回答
javascript-Highcharts:getJSONでレンダリングされません
phpファイルから返された動的データを使用して円グラフ(半円ドーナツ)をレンダリングしようとしています。
data returned by data.php:
echo json_encode($overview)
output: {"Apple":184,"Mango":105,"Oranges":30,"Grapes":17} (This list is dynamic)
これがjQueryで行っていることです:
$(document).ready(function(){
$('#show').click(function(){
var chart;
var options = {
chart: {
renderTo: 'container',
plotBackgroundColor: null,
plotBorderWidth: 0,
plotShadow: false
},
title: {
text: 'Browser<br>shares<br>2015',
align: 'center',
verticalAlign: 'middle',
y: 40
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
dataLabels: {
enabled: true,
distance: -50,
style: {
fontWeight: 'bold',
color: 'white',
textShadow: '0px 1px 2px black'
}
},
startAngle: -90,
endAngle: 90,
center: ['50%', '75%']
}
},
series: [{
type: 'pie',
name: 'Browser share',
innerSize: '50%',
}]
}; //var options ends here
$.getJSON("data.php", function(json) {
json = JSON.stringify(json);
options.series[0] = {};
options.series[0].data = json[0]['json'];
chart = new Highcharts.Chart(options);
});
});
});
私はこれについてさまざまな質問に答えようとしましたが、運がありませんでした。何が欠けているのか提案してください。
わからない
0
レビュー
答え :
解決策:
データはオブジェクトではなく配列である必要があります。結果として、この数字を達成する必要があります:
["Apple":184,"Mango":105,"Oranges":30,"Grapes":17]
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。