Ceaveat Berikut ini hanya berlaku untuk d3 v3, dan bukan d4v4 terbaru!
Saya lebih memilih d3.js , dan meskipun ini tidak akan menjadi pengganti total untuk Pandas, jika Anda meluangkan waktu mempelajari paradigmanya, ia harus dapat menangani semua data Anda yang bertengkar untuk Anda. (Dan jika Anda akhirnya ingin menampilkan hasil di browser, itu idealnya cocok untuk itu.)
Contoh. File CSV saya data.csv:
name,age,color
Mickey,65,black
Donald,58,white
Pluto,64,orange
Di direktori yang sama, buat yang index.htmlberisi berikut ini:
<!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>
dan juga demo.jsfile yang berisi berikut ini:
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);
});
Di direktori, jalankan python -m SimpleHTTPServer 8181, dan buka http: // localhost: 8181 di browser Anda untuk melihat daftar sederhana usia dan rata-ratanya.
Contoh sederhana ini menunjukkan beberapa fitur d3 yang relevan:
- Dukungan yang sangat baik untuk menyerap data online ( CSV , TSV, JSON, dll.)
- Kecerdasan perebutan data muncul
- Manipulasi DOM berdasarkan data (mungkin hal tersulit untuk dipahami): data Anda diubah menjadi elemen DOM.