|
|
- <!DOCTYPE html>
- <!-- saved from url=(0046)http://visjs.org/examples/graph/03_images.html -->
- <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Graph | Images</title>
-
- <style type="text/css">
- body {
- font: 10pt arial;
- padding: 0;
- margin: 0;
- overflow: hidden;
- }
- #mygraph {
- width: 100%;
- height: 100%;
- box-sizing: border-box;
- }
- </style>
-
- <script type="text/javascript" src="../../vis.min.js"></script>
-
- <script type="text/javascript">
- var nodes = null;
- var edges = null;
- var graph = null;
-
- var LENGTH_MAIN = 350,
- LENGTH_SERVER = 150,
- LENGTH_SUB = 50,
- WIDTH_SCALE = 2,
- GREEN = 'green',
- RED = '#C5000B',
- ORANGE = 'orange',
- //GRAY = '#666666',
- GRAY = 'gray',
- BLACK = '#2B1B17';
-
- // Called when the Visualization API is loaded.
- function draw() {
- // Create a data table with nodes.
- nodes = [];
-
- // Create a data table with links.
- edges = [];
-
- nodes.push({id: 1, label: '192.168.0.1', group: 'switch', value: 10});
- nodes.push({id: 2, label: '192.168.0.2', group: 'switch', value: 8});
- nodes.push({id: 3, label: '192.168.0.3', group: 'switch', value: 6});
- edges.push({from: 1, to: 2, length: LENGTH_MAIN, width: WIDTH_SCALE * 6, label: '0.71 mbps'});
- edges.push({from: 1, to: 3, length: LENGTH_MAIN, width: WIDTH_SCALE * 4, label: '0.55 mbps'});
-
- // group around 2
- for (var i = 100; i <= 104; i++) {
- var value = 1;
- var width = WIDTH_SCALE * 2;
- var color = GRAY;
- var label = null;
-
- if (i === 103) {
- value = 5;
- width = 3;
- }
- if (i === 102) {
- color = RED;
- label = 'error';
- }
-
- nodes.push({id: i, label: '192.168.0.' + i, group: 'desktop', value: value});
- edges.push({from: 2, to: i, length: LENGTH_SUB, color: color, fontColor: color, width: width, label: label});
- }
- nodes.push({id: 201, label: '192.168.0.201', group: 'desktop', value: 1});
- edges.push({from: 2, to: 201, length: LENGTH_SUB, color: GRAY, width: WIDTH_SCALE});
-
- // group around 3
- nodes.push({id: 202, label: '192.168.0.202', group: 'desktop', value: 4});
- edges.push({from: 3, to: 202, length: LENGTH_SUB, color: GRAY, width: WIDTH_SCALE * 2});
- for (var i = 230; i <= 231; i++ ) {
- nodes.push({id: i, label: '192.168.0.' + i, group: 'mobile', value: 2});
- edges.push({from: 3, to: i, length: LENGTH_SUB, color: GRAY, fontColor: GRAY, width: WIDTH_SCALE});
- }
-
- // group around 1
- nodes.push({id: 10, label: '192.168.0.10', group: 'server', value: 10});
- edges.push({from: 1, to: 10, length: LENGTH_SERVER, color: GRAY, width: WIDTH_SCALE * 6, label: '0.92 mbps'});
- nodes.push({id: 11, label: '192.168.0.11', group: 'server', value: 7});
- edges.push({from: 1, to: 11, length: LENGTH_SERVER, color: GRAY, width: WIDTH_SCALE * 3, label: '0.68 mbps'});
- nodes.push({id: 12, label: '192.168.0.12', group: 'server', value: 3});
- edges.push({from: 1, to: 12, length: LENGTH_SERVER, color: GRAY, width: WIDTH_SCALE, label: '0.3 mbps'});
-
- nodes.push({id: 204, label: 'Internet', group: 'internet', value: 10});
- edges.push({from: 1, to: 204, length: 200, width: WIDTH_SCALE * 3, label: '0.63 mbps'});
-
-
- // legend
- var mygraph = document.getElementById('mygraph');
- var x = - mygraph.clientWidth / 2 + 50;
- var y = - mygraph.clientHeight / 2 + 50;
- var step = 70;
- nodes.push({id: 1000, x: x, y: y, label: 'Internet', group: 'internet', value: 1});
- nodes.push({id: 1001, x: x, y: y + step, label: 'Switch', group: 'switch', value: 1});
- nodes.push({id: 1002, x: x, y: y + 2 * step, label: 'Server', group: 'server', value: 1});
- nodes.push({id: 1003, x: x, y: y + 3 * step, label: 'Computer', group: 'desktop', value: 1});
- nodes.push({id: 1004, x: x, y: y + 4 * step, label: 'Smartphone', group: 'mobile', value: 1});
-
- // create a graph
- var container = document.getElementById('mygraph');
- var data = {
- nodes: nodes,
- edges: edges
- };
- var options = {
- stabilize: false, // stabilize positions before displaying
- nodes: {
- radiusMin: 16,
- radiusMax: 32,
- fontColor: BLACK
- },
- edges: {
- color: GRAY
- },
- groups: {
- 'switch': {
- shape: 'triangle',
- color: '#FF9900' // orange
- },
- desktop: {
- shape: 'dot',
- color: "#2B7CE9" // blue
- },
- mobile: {
- shape: 'dot',
- color: "#5A1E5C" // purple
- },
- server: {
- shape: 'square',
- color: "#C5000B" // red
- },
- internet: {
- shape: 'square',
- color: "#109618" // green
- }
- }
- };
- graph = new vis.Graph(container, data, options);
- }
- </script>
- </head>
-
- <body onload="draw()">
-
- <div id="mygraph"><div class="graph-frame" style="position: relative; overflow: hidden; width: 100%; height: 100%;"><canvas style="position: relative; width: 100%; height: 100%;"></canvas></div></div>
-
-
-
- </body></html>
|