SO Question Test along circle 3
by Aaron Calderon
JavaScript
var diameter = 500,
format = d3.format(",d"),
dataSource = 2;
var pack = d3.layout.pack()
.size([diameter - 3, diameter - 3])
.padding(2)
.sort(function(a, b) {
return -(a.value - b.value);
})
.value(function(d) { return d.size; });
var svg = d3.select("body").append("svg")
.attr("width", diameter + 300)
.attr("height", diameter);
var parties = [
{ name: "Conservative", color:"#6495ed" },
{ name: "New Democratic", color:"#f4a460" },
{ name: "Liberal", color:"#F08080" },
{ name: "Bloc Québécois", color:"#87CEFA" },
{ name: "Green", color:"#2F873E" }
];
var provincies = [
{ name: "British Columbia", acronym: "BC" },
{ name: "Alberta", acronym: "AL" },
{ name: "Saskatchewan", acronym: "SK" },
{ name: "Manitoba", acronym: "MB" },
{ name: "Ontario", acronym: "ON" },
{ name: "Quebec", acronym: "BC" },
{ name: "New Brunswick", acronym: "NB" },
{ name: "Nova Scotia", acronym: "NS" },
{ name: "Prince Edward Island", acronym: "PE" },
{ name: "Newfoundland and Labrador", acronym: "NL" },
{ name: "Yucon", acronym: "YT" },
{ name: "Northwest Territories", acronym: "NT" },
{ name: "Nunavut", acronym: "NU" }
];
var buttonData = ["Original", "Constant", "Random"];
var buttonDiv = d3.select("body").append("svg")
.attr("width", diameter)
.attr("height", 50);
var buttons = buttonDiv.selectAll(".updateButton")
.data(buttonData)
.enter()
.append('g')
.attr("class", "updateButton")
.on("click", function(d, i) {
dataSource = i;
updateVis();
});
buttons.append("rect")
.attr("x", function(d, i) { return (i * 100) + 100; })
.attr("width", 98)
.attr("height", 25)
.attr("ry", 5)
.style("stroke",...