Utilisez les graphiques actifs pour le graphique à secteurs. Voici le code JS pour elle:Highcharts Données du graphique à secteurs Format via php
$(document).ready(function() {
var chart;
var graphData = $("#graphContentdata").val();
console.log(graphData);
var options = {
chart: {
renderTo: 'graphContainer',
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false
},
title: {
text: 'SOV'
},
tooltip: {
formatter: function() {
return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
}
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
color: '#000000',
connectorColor: '#000000',
formatter: function() {
return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
}
}
}
},
series: [{
type: 'pie',
name: 'Browser share',
data: []
}]
}
chart = new Highcharts.Chart(options);
chart.series[0].setData("["+graphData+"]");
});
et le code PHP pour générer les données:
foreach ($sumArray as $key=>$value)
{
$sumArray[$key] = array_sum($value);
$percent = (number_format(($sumArray[$key]/$sovGrandTotal)*100,2));
$data[] = "['$key', $percent]";
}
$data = join(",", $data);
?>
<input type='hidden' id='graphContentdata' value="<?php echo $data; ?>">
Le format de données Am obtenir est:
['www.quora.com', 0.23],['www.slideshare.net', 0.25],['me', 99.52]
problème est:
chart.series[0].setData("["+graphData+"]");
ne créant pas de graphique, mais si je copie coller la valeur de la console à palce de la variable graphData
, son travail comme:
chart.series[0].setData([['www.quora.com', 0.23],['www.slideshare.net', 0.25],['me', 99.52]]);
travaille.
Quelle est l'erreur que je fais ici ???
Avez-vous essayé de mettre l'écho json_encode ($ Les données); ? En fait, vos données sont un tableau php qui n'a aucune valeur dans js. Quoi qu'il en soit, écrire que dans la valeur de l'entrée n'est pas le meilleur moyen. – stefanz
J'ai essayé echo json_encode ($ data); mais il donne une chaîne vide ... – Arul
tous les autres formats pour le transmettre aux données de camembert ??? [moi] = 99.52 [www.quora.com] = 0.23 [www.slideshare.net] = 0.25 – Arul