Transformer JSON dans le format correct pour mettre en Morris Graphique à barres plugin

Je suis en utilisant le Morris Graphique à barres plugin. Vous pouvez voir un exemple ici.

Le bon format de données à insérer dans le tableau est le suivant:

data: [
    { y: '2006', a: 100, b: 90 },
    { y: '2007', a: 75,  b: 65 },
    { y: '2008', a: 50,  b: 40 },
    { y: '2009', a: 75,  b: 65 },
    { y: '2010', a: 50,  b: 40 },
    { y: '2011', a: 75,  b: 65 },
    { y: '2012', a: 100, b: 90 }
  ],

Je veux remplir cette info mais avec une requête ajax PHP.

$.ajax({
    url: 'getchart.php',
    success: function(content){

        console.log(content); //Native return

        var element = [];   
        var json    = JSON.parse(content);

        for(var i = 0; i <= json.length - 1; i++){
            element[i] = {y: json[i][0].month, a: json[i][0].total};
        }

        console.log(element);
    }
});

J'ai réaliser la demande avec succès mais j'ai besoin de convertir au format json-je obtenir de l'ajax pour le format morris graphique besoins.

[[{"total":1,"Month":7,"description":"Started"},
{"total":1,"Month":6,"description":"Started"}],
[{"total":3,"Month":6,"description":"Started"}]] 

Le code ci-dessus est ce que la variable content de sortie. Le problème ici est que l'un index contient 2 sous-index et les autres index ne contient qu'un sous-indice:

Indice 1:

[{"total":1,"Month":7,"description":"Started"},
 {"total":1,"Month":6,"description":"Started"}],

Et le deuxième index ne contient qu'un seul sous-indice

Indice 2:

[{"total":3,"Month":6,"description":"Started"}]],

Cela se produit parce que je suis poussant deux tableaux en un en PHP.

$AN = $chart->chartAN(); //Apresentation and Negociation
$AC = $chart->chartAC(); //Accomplished

$final = array($AN, $AC);

echo json_encode($final);

Et, d'ailleurs, la sortie de deux fonctions est la même:

while($query->fetch()){     
  $rows[] = array("total" => $total, "month" => $month, "description" => $type);
}

Actuellement, le console.log(element) me renvoie:

[Object, Object];
    > 0: Object
        a: 1
        y: 7

    > 1: Object
        a: 3
        y: 6

Mon résultat final, je voudrais faire quelque chose comme:

element: [
          { y: 'April', a: value_from_chartAN, b: value_from_chartAC },
          { y: 'May',   a: value_from_chartAN, b: value_from_chartAC },
         ],

MODIFIER: afin De clarifier la question (parce que je sais n'est pas simple).

Je voudrais que mon sortie:

element: [
              { y: month_from_database, a: value_from_chartAN, b: value_from_chartAC },
              { y: month_from_database, a: value_from_chartAN, b: value_from_chartAC },
             ],

Depuis value_from_chartAN ou value_from_chartAC peut être null, il faut ajouter le nombre 0.
Si vous regardez l'exemple de Morris: http://jsbin.com/uzosiq/258/embed?javascript,en direct

L'année correspondent à mon Mois, la barre bleue à la value_from_chartAN et la barre grise à value_from_chartAC.

Pour aplatir le tableau json retourné dans le navigateur-pour se débarrasser des deux index problème, voir: stackoverflow.com/questions/10865025/...
Je ne vois pas où la valeur de b: dans votre sortie attendue est censé venir de, et la valeur de y: devrait logiquement être une année (2014), mais vous voulez qu'il soit un mois (avril)? Veuillez éditer votre question à clarifier
Je viens de mettre à jour mon sujet.
OK, mauvais jour de ma réponse avec une solution

OriginalL'auteur Linesofcode | 2014-06-19