2017-09-28 2 views
0

Je suis en train de pousser des données dynamiquement lors de l'exécution de la Animated Time-Line Pie ChartComment fournir des données à des diagrammes à tarte animés chronologiques?

Voici le code:

var array = new Array(); 
function pushvalue(curyear,curmonth,monvalue){ 
     array.push({year: curyear, month: curmonth, count: moncount}); 
} 
var chartdata = new Array(); 
for (var i=1; i < array.length; i++){ 
    chartdata = { 
      “Year”: array[i].year: [ 
          { “Month”: array[i].month, “Count”: array[i].count }, ] }; 
} 

La valeur de tableau est obtenu à partir de l'entrée de fichier. Le problème que je reçois est le ChartData ne peut pas obtenir la valeur qui lui est attribué à l'année des objets, il indique l'erreur comme prévu « } » ou erreur de syntaxe si j'inclure ou exclure « : » après la ”Year”: array[i].year

mai Je sais ce que je fais mal et comment le réparer? Merci!

Répondre

0

La syntaxe pour affecter une nouvelle année est incorrecte. Vous ne pouvez pas faire "Year": varname: [...] dans une ligne. Vous aurez envie de changer quelque chose comme ceci:

for (var i = 0; i < array.length; ++i) { 
    if (!chartData[array[i].year]) { 
    chartData[array[i].year] = []; 
    } 
    chartData[array[i].year].push({"Month": array[i].month, "Count": array[i].count }); 
} 

Demo en utilisant des valeurs fausses: http://jsfiddle.net/9428r6fw/4/

Notez également que votre méthode pushvalue est erroné - votre paramètre pour le compte est nommé monvalue mais vous » réessayer de pousser moncount

+0

Cela fonctionne, merci beaucoup @xorspark. Oui, j'ai remarqué que l'argument de la méthode pushvalue n'était pas adapté, c'était une faute de frappe. –