Highchart dynamique de création - pas rendu correctement
je fais un highchart dessin à l'aide de fonction dynamique, il n'est pas du tout déchirer après la fonction appelée. plus tard, si je redimensionner la fenêtre, il se rendu des données? pour quelle raison particulière à cela?
ma fonction:
var chart;
$(document).ready(function(){
function randomData(len){
var arr = [];
for(var i = 0; i<len;i++){
arr.push(Math.random())
}
return arr;
}
var options = {
chart:{
renderTo:'graph',
type:'line'
},
title:{
text:null
},
xAxis: {
plotBands: [{
from: 5,
to: 6,
color: 'yellow',
label: {
text: 'Yellow'
}
}, {
from: 10,
to: 11,
color: 'green',
label: {
text: 'Green'
}
}]
},
plotOptions:{
series:{
animation:false,
dataLabels:{enabled:true,formatter:function(){return Highcharts.numberFormat(this.y)}}
}
}
}
chart = new Highcharts.Chart(options);
var i = 1, s1,s2,s3,s4;
function createChart(){
s1 = chart.addSeries({data:randomData(20),name:'Line'+i},false);
}
$('#create').click(function(){ createChart() });
})
Pls vérifier mon jsfiddle.
OriginalL'auteur 3gwebtrain | 2012-05-11
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin pour ajouter un graphique.redraw();
Je suppose qu'ils ont de la fenêtre.redimensionner gestionnaire d'appel et de les redessiner.
faire sens. merci.
OriginalL'auteur Alexey Ogarkov
Le problème est que vous définissez le paramètre set de addSeries comme faux.
Dans ce cas, vous devez définir comme vrai et il retrace le graphique après l'ajout de la nouvelle série.
Pour une série.
Comme l'exemple suivant.
jsfiddle
Ou si vous souhaitez ajouter plus d'un série dans chaque clic vous avez juste à changer une chose.
Vous permettra d'ajouter l'ensemble de vos séries et après qui redessinent le tableau, de sorte que vous n'avez pas à redessiner votre carte chaque fois que vous ajoutez une nouvelle série.
OriginalL'auteur Ricardo Alvaro Lohmann