-tr.graphing.Radar = function (svg, size, radar) {
- var self, fib;
- self = {};
+tr.graphing.Radar = function (size, radar) {
+ var self, fib, svg;
+
+ svg = d3.select("body").append("svg");
fib = new tr.util.Fib();
- svg.attr('width', size).attr('height', size);
+ self = {};
+ self.svg = svg;
function center () {
return Math.round(size/2);
}
function plotBlips(cycles, quadrant, adjustX, adjustY) {
- var blips, number;
+ var blips;
blips = quadrant.blips();
- number = 0;
cycles.forEach(function (cycle, i) {
var maxRadius, minRadius, cycleBlips;
var split = blip.name().split('');
var sum = split.reduce(function (p, c) { return p + c.charCodeAt(0); }, 0);
- chance = new Chance(sum * cycle.name().length * number);
+ chance = new Chance(sum * cycle.name().length * blip.number());
angleInRad = Math.PI * chance.integer({ min: 13, max: 85 }) / 180;
radius = chance.floating({ min: minRadius + 25, max: maxRadius - 10 });
.attr('y', y + 4)
.attr('class', 'blip-text')
.attr('text-anchor', 'middle')
- .text(++number)
+ .text(blip.number())
});
});
};
self.plot = function () {
var cycles, quadrants;
+
cycles = radar.cycles().reverse();
quadrants = radar.quadrants();
+ svg.attr('width', size).attr('height', size);
+
plotCircles(cycles);
plotLines();
plotTexts(cycles);