var width = 960,
height = 500,
- color = d3.scale.category20c();
+ color = d3.scale.category10();
var svg = d3.select("#table_graph").append("svg")
.attr("width", width)
.charge(-100)
.size([width, height]);
-//d3.json("js/graph.json", function(error, json) {
d3.json("http://127.0.0.1:5001/restapi/network/d3jsgraph", function(error, json) {
if (error) throw error;
var node = svg.selectAll(".node")
.data(json.nodes)
- .enter().append("g")
+ .enter().append("g")
.attr("class", "node")
- .call(force.drag);
-
- //node.append("image")
- // .attr("xlink:href", "https://github.com/favicon.ico")
- // .attr("x", -8)
- // .attr("y", -8)
- // .attr("width", 16)
- // .attr("height", 16);
+ .call(force.drag)
+ .on("dblclick", dblclick)
+
node.append("circle")
.attr("r", 10)
- .style("fill", function(d) { return color(d.name); });
+ .style("fill", function(d) { return color(d.group); });
node.append("text")
.attr("dx", 12)
node.attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; });
});
+
+ // action to take on double mouse click, call rest api to start xterm
+ function dblclick() {
+ var vnf_name = d3.select(this).text()
+ console.debug(vnf_name)
+ var rest_url = "http://127.0.0.1:5001/restapi/monitor/term?vnf_list=" + vnf_name
+
+ d3.json(rest_url, function(error, json) {
+ if (error) throw error;
+ console.debug(json)
+ });
+ }
+
+
});
\ No newline at end of file