私はこの関数を使用してチャートをロードするためにhighchartsjavascriptライブラリを使用しようとしています:
function create_chart(success, failed, pending)
{
var chart = new Highcharts.Chart({
chart: {
renderTo: 'graph',
margin: [5, 5, 5, 5]
},
title: {
text: 'Message Sending Status'
},
plotArea: {
shadow: null,
borderWidth: null,
backgroundColor: null
},
tooltip: {
formatter: function() {
return '<b>'+ this.point.name +'</b>: '+ this.y +' %';
}
},
plotOptions: {
pie: {
allowPointSelect: true,
dataLabels: {
enabled: true,
formatter: function() {
if (this.y > 5) return this.point.name;
},
color: 'white',
style: {
font: '13px Trebuchet MS, Verdana, sans-serif'
}
}
}
},
legend: {
layout: 'vertical',
style: {
left: 'auto',
bottom: 'auto',
right: '50px',
top: '100px'
}
},
series: [{
type: 'pie',
name: 'Message Status',
data: [
['Successful Messages', success],
['Failed Messages', failed],
['Pending Messages', pending]
]
}]
});
}
ただし、これによりブラウザがロックされます
問題を次のように絞り込みました
data: [
['Successful Messages', success],
['Failed Messages', failed],
['Pending Messages', pending]
]
変数の代わりに数字を使用するように(つまり、成功を12 ectに置き換える)、正常に機能します
console.log(success)を使用すると12が返されるため、これは混乱を招きます。これは何が原因でしょうか。