Ceaveat Das Folgende gilt nur für d3 v3 und nicht für das neueste d4v4!
Ich bin ein Teil von d3.js , und obwohl es kein vollständiger Ersatz für Pandas ist, sollte es in der Lage sein, alle Ihre Daten für Sie zu erledigen , wenn Sie einige Zeit damit verbringen, sein Paradigma zu lernen. (Und wenn Sie am Ende Ergebnisse im Browser anzeigen möchten, ist dies ideal dafür geeignet.)
Beispiel. Meine CSV-Datei data.csv
:
name,age,color
Mickey,65,black
Donald,58,white
Pluto,64,orange
Erstellen Sie im selben Verzeichnis ein Verzeichnis, index.html
das Folgendes enthält:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>My D3 demo</title>
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
</head>
<body>
<script charset="utf-8" src="demo.js"></script>
</body>
</html>
und auch eine demo.js
Datei, die Folgendes enthält:
d3.csv('/data.csv',
function(row) {
return {name : row.name, age : +row.age, color : row.color};
},
function(data) {
console.log(data);
var averageAge = data.reduce(function(prev, curr) {
return prev + curr.age;
}, 0) / data.length;
var ulSelection = d3.select('body').append('ul');
var valuesSelection =
ulSelection.selectAll('li').data(data).enter().append('li').text(
function(d) { return d.age; });
var totalSelection =
ulSelection.append('li').text('Average: ' + averageAge);
});
Führen Sie im Verzeichnis http: // localhost: 8181 auspython -m SimpleHTTPServer 8181
und öffnen Sie es in Ihrem Browser, um eine einfache Auflistung des Alters und seines Durchschnitts anzuzeigen.
Dieses einfache Beispiel zeigt einige relevante Funktionen von d3:
- Hervorragende Unterstützung für die Aufnahme von Online-Daten ( CSV , TSV, JSON usw.)
- Daten-Wrangling-Smarts eingebrannt
- Datengesteuerte DOM-Manipulation (vielleicht das Schwierigste, den Kopf herumzureißen): Ihre Daten werden in DOM-Elemente umgewandelt.