<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Network | On Load Animation</title> <script type="text/javascript" src="../../../dist/vis.js"></script> <link href="../../../dist/vis-network.min.css" rel="stylesheet" type="text/css" /> <style type="text/css"> #mynetwork { width: 600px; height: 400px; border: 1px solid lightgray; } </style> </head> <body> <h2>Vis.js network onLoad animation</h2> <p>easeIn functions accelerate from zero velocity.</p> <p>easeOut functions decelerate to zero velocity.</p> <p>easeInOut functions accelerate from zero till halfway then after the halfway point they decrease until zero.</p> <div> Onload Animation Easing Function - <select id="easingFunction"> <option value="linear">linear</option> <option value="easeInQuad">easeInQuad</option> <option value="easeOutQuad">easeOutQuad</option> <option value="easeInOutQuad">easeInOutQuad</option> <option value="easeInCubic">easeInCubic</option> <option value="easeOutCubic">easeOutCubic</option> <option value="easeInOutCubic">easeInOutCubic</option> <option value="easeInQuart">easeInQuart</option> <option value="easeOutQuart">easeOutQuart</option> <option value="easeInOutQuart">easeInOutQuart</option> <option value="easeInQuint">easeInQuint</option> <option value="easeOutQuint">easeOutQuint</option> <option value="easeInOutQuint">easeInOutQuint</option> </select> <button onClick="createNetwork(document.getElementById('easingFunction').value);">Demo Easing Function</button> </div> <p>For more information on easing functions check out <a href="http://easings.net/">easings.net</a></p> <div id="mynetwork"></div> <script type="text/javascript"> document.getElementById("easingFunction").selectedIndex = 0; function createNetwork(easingType) { var nodes = new vis.DataSet([ {id: 1, label: 'Node 1'}, {id: 2, label: 'Node 2'}, {id: 3, label: 'Node 3'}, {id: 4, label: 'Node 4'}, {id: 5, label: 'Node 5'} ]); var edges = new vis.DataSet([ {from: 1, to: 3}, {from: 1, to: 2}, {from: 2, to: 4}, {from: 2, to: 5} ]); var container = document.getElementById('mynetwork'); var data = { nodes: nodes, edges: edges }; var options = {}; var network = new vis.Network(container, data, options); network.once("beforeDrawing", function() { network.focus(2, { scale: 12 }); }); network.once("afterDrawing", function() { network.fit({ animation: { duration: 3000, easingFunction: easingType } }); }); } createNetwork("linear"); </script> </body> </html>