-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtree2.js
81 lines (45 loc) · 1.26 KB
/
tree2.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
var width = 1900;
var height = 1800;
var canvas = d3.select('body').append('svg')
.attr('width', width)
.attr('height', height)
.append('g')
.attr('transform', 'translate(50, 50)');
var tree = d3.layout.cluster()
.size([1400, 1400]);
// var pack = d3.layout.pack()
// .size([width, height - 50])
// .padding(10);
// d3.json(treeData, function(data) {
var nodes = tree.nodes(treeData);
// })
// var nodes = pack.nodes(treeData);
var node = canvas.selectAll(".node")
.data(nodes)
.enter()
.append('g')
.attr("class", "node")
.attr("transform", function (d) {return "translate(" + d.x + "," + (height - d.y) + ")";} );
var links = tree.links(nodes);
var link = canvas.selectAll(".link")
.data(links)
.enter()
.append('g')
.attr("class", "link")
.attr("transform", function (d) {return "translate(" + 0 + "," + (height - d.y) + ")";} ) ;
node.append("circle")
.attr("r", function(d) {return d.r;})
.attr("fill", "green")
.attr("opacity", 0.25)
.attr("stroke", "#ADADAD")
.attr("stroke-width", "2")
.attr('r', 40);
node.append("text")
.text(function(d) {return d.name })
var diagonal = d3.svg.diagonal();
link
.append("path")
.attr("class", "link")
.attr("fill", "none")
.attr("stroke", "#ADADAD")
.attr('d', diagonal);