複数の円グラフを作成するマイク・ボストックの例のコードを適応させようとしています。非常に簡潔ですが、コードの基本的な部分を理解するのに苦労しています。
// Define the data as a two-dimensional array of numbers. If you had other
// data to associate with each number, replace each number with an object, e.g.,
// `{key: "value"}`.
var data = [
[11975, 5871, 8916, 2868],
[ 1951, 10048, 2060, 6171],
[ 8010, 16145, 8090, 8045],
[ 1013, 990, 940, 6907]
];
これを機能させる例は何{key: "value"}
ですか? 私はもう試した
[{key1: 100}, {key2: 200}]
[{key1: 100, key2: 200}]
[{'key1': 100, 'key2': 200}]
および他のいくつかの順列。
私の目標は、json
このようなデータ構造の代わりにオブジェクトを使用することですが、正しいデータ構造を構築する方法をよりよく理解したいと思っています。
(gist 経由で) チャートを生成するには、次のコードを使用します。
var m = 10,
r = 100,
z = d3.scale.category20c();
var svg = d3.select(".sentiment-pie-chart-1").selectAll("svg")
.data(data)
.enter().append("svg:svg")
.attr("width", (r + m) * 2)
.attr("height", (r + m) * 2)
.append("svg:g")
.attr("transform", "translate(" + (r + m) + "," + (r + m) + ")");
svg.selectAll("path")
.data(d3.layout.pie())
.enter().append("svg:path")
.attr("d", d3.svg.arc()
.innerRadius(r / 2)
.outerRadius(r))
.style("fill", function(d, i) { return z(i); });