2012-05-21 27 views
13

qualcuno può fornire un esempio di base su come importare i dati da un file XML usando d3?Come importare dati XML usando d3.js?

mio file XML è simile al seguente:

<data> 
     <value>71</value> 
     <value>12</value> 
     <value>44</value> 
     <value>88</value> 
    </data> 

Come posso aggiungere questi valori a un array di dati? Ecco quello che ho provato finora:

d3.xml("values.xml", function(xml) { 
    d3.select(xml).selectAll("data").each(function(data) { 
     d3.select(data).selectAll("value"); 
     //add data to array?; 
     }; 
}); 
    //use Array 

risposta

19

L'oggetto XML che viene passato al callback è l'elemento principale del DOM XML (vedi https://github.com/mbostock/d3/wiki/Requests#wiki-d3_xml), e quindi è necessario elaborare utilizzando il JavaScript XML/DOM accesso facilitato (vedi http://www.hiteshagrawal.com/javascript/javascript-parsing-xml-in-javascript).

ho scritto un piccolo esempio che mostra come usare d3.xml per creare un grafico a barre (in base alla d3 originale barchart esempio http://mbostock.github.com/d3/tutorial/bar-1.html):

link per vedere un esempio: http://bl.ocks.org/2772585

collegamento con Codice XML: https://gist.github.com/lgrammel/2772585