Browse Source

updated example css, added blogpost

gh-pages
Alex de Mulder 9 years ago
parent
commit
5d85fb5c29
4 changed files with 593 additions and 256 deletions
  1. +507
    -170
      blog.html
  2. +6
    -6
      css/examples.css
  3. +45
    -45
      network_examples.html
  4. +35
    -35
      timeline_examples.html

+ 507
- 170
blog.html View File

@ -1,5 +1,19 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"><head><script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');ga('create', 'UA-61231638-1', 'auto');ga('send', 'pageview');</script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<html lang="en">
<head>
<script>(function (i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
i[r] = i[r] || function () {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date();
a = s.createElement(o), m = s.getElementsByTagName(o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-61231638-1', 'auto');
ga('send', 'pageview');</script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
@ -26,114 +40,112 @@
<style> <style>
html { html {
height:100%;
height: 100%;
} }
body { body {
font-family: Lustria, Georgia, Times, "Times New Roman", serif !important; font-family: Lustria, Georgia, Times, "Times New Roman", serif !important;
height:100%;
height: 100%;
background: url('./images/crosswordStrong.png') /* Background pattern from subtlepatterns.com */ background: url('./images/crosswordStrong.png') /* Background pattern from subtlepatterns.com */
} }
img.icon { img.icon {
position:relative;
top:-2px;
position: relative;
top: -2px;
} }
div.navbar-wrapper { div.navbar-wrapper {
background-color:#07508E;
background-color: #07508E;
border-bottom: 3px solid #ffffff; border-bottom: 3px solid #ffffff;
font-size:16px;
font-size: 16px;
} }
div.center { div.center {
width:970px;
margin-left:auto;
margin-right:auto;
width: 970px;
margin-left: auto;
margin-right: auto;
} }
div.container.small{
max-width:970px;
div.container.small {
max-width: 970px;
} }
div.blogHeader { div.blogHeader {
margin-left:auto;
margin-right:auto;
text-align:center;
width:910px;
margin-left: auto;
margin-right: auto;
text-align: center;
width: 910px;
padding: 0px 30px 0px 30px; padding: 0px 30px 0px 30px;
margin-top:-150px;
color:#ffffff;
margin-top: -150px;
color: #ffffff;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 1); text-shadow: 1px 1px 3px rgba(0, 0, 0, 1);
margin-bottom:60px;
margin-bottom: 60px;
} }
div.post { div.post {
margin:40px 80px 0px 190px;
padding:10px 10px 10px 20px;;
margin: 40px 80px 0px 190px;
padding: 10px 10px 10px 20px;;
border: 1px solid #eeeeee; border: 1px solid #eeeeee;
border-radius:3px;
border-radius: 3px;
} }
div.postHeader { div.postHeader {
float:left;
font-size:30px;
float: left;
font-size: 30px;
} }
div.postDate { div.postDate {
margin-top:19px;
float:right;
font-size:12px;
margin-top: 19px;
float: right;
font-size: 12px;
} }
div.postAuthor { div.postAuthor {
padding-left:5px;
margin-top:19px;
margin-right:20px;
float:right;
font-size:12px;
padding-left: 5px;
margin-top: 19px;
margin-right: 20px;
float: right;
font-size: 12px;
} }
div.postContent { div.postContent {
font-size: 16px; font-size: 16px;
margin-top:50px;
padding:10px 20px 0px 20px;
text-align:justify;
margin-top: 50px;
padding: 10px 20px 0px 20px;
text-align: justify;
} }
div.full { div.full {
min-height:100%;
box-shadow:0px 2px 10px rgba(0,0,0,0.4);
padding:0px;
background-color:#ffffff;
min-height: 100%;
box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.4);
padding: 0px;
background-color: #ffffff;
} }
div.postsMenu { div.postsMenu {
position:relative;
left:-15px;
top:-50px;
width:0px;
height:0px;
position: relative;
left: -15px;
top: -50px;
width: 0px;
height: 0px;
} }
div.postsMenuContent { div.postsMenuContent {
padding:10px;
background-color:#6787a6;
width:180px;
height:500px;
border-radius:5px;
box-shadow:0px 2px 10px rgba(0,0,0,0.4);
color:#ffffff;
font-size:16px;
padding: 10px;
background-color: #6787a6;
width: 180px;
height: 500px;
border-radius: 5px;
box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.4);
color: #ffffff;
font-size: 16px;
} }
a.post { a.post {
font-size:12px;
text-decoration:none;
color:#ffffff;
display:block;
font-size: 12px;
text-decoration: none;
color: #ffffff;
display: block;
margin: 10px 0px 0px 0px; margin: 10px 0px 0px 0px;
} }
</style> </style>
@ -147,7 +159,8 @@
<nav class="navbar navbar-inverse navbar-static-top" role="navigation"> <nav class="navbar navbar-inverse navbar-static-top" role="navigation">
<div class="container"> <div class="container">
<div class="navbar-header"> <div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"
aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span> <span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
@ -158,7 +171,9 @@
<div id="navbar" class="navbar-collapse collapse"> <div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav"> <ul class="nav navbar-nav">
<li><a href="./index.html#modules">Modules</a></li> <li><a href="./index.html#modules">Modules</a></li>
<li><a href="./docs/index.html" target="_blank">Documentation <img class="icon" src="./images/external-link-icons/external-link-icon-white.png"></a></li>
<li><a href="./docs/index.html" target="_blank">Documentation <img class="icon"
src="./images/external-link-icons/external-link-icon-white.png"></a>
</li>
<li class="active"><a href="#">Blog</a></li> <li class="active"><a href="#">Blog</a></li>
<li><a href="./index.html#download_install">Download</a></li> <li><a href="./index.html#download_install">Download</a></li>
<li><a href="./showcase/index.html">Showcase</a></li> <li><a href="./showcase/index.html">Showcase</a></li>
@ -173,7 +188,12 @@
</div> </div>
</div> </div>
<a href="https://github.com/almende/vis" class="hidden-xs hidden-sm hidden-md"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png"></a>
<a href="https://github.com/almende/vis" class="hidden-xs hidden-sm hidden-md"><img
style="position: absolute; top: 0; right: 0; border: 0;"
src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67"
alt="Fork me on GitHub"
data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png"></a>
<div class="container full small"> <div class="container full small">
<div class="center"> <div class="center">
<img src="./images/wallHeader.png"> <img src="./images/wallHeader.png">
@ -181,14 +201,17 @@
<div class="blogHeader"> <div class="blogHeader">
<h1>vis.js</h1> <h1>vis.js</h1>
<p>A dynamic, browser based visualization library. <p>A dynamic, browser based visualization library.
The library consists of the components DataSet, Timeline, Network, Graph2d and Graph3d. This blog is about the latest developments, roadmap and releases.
The library consists of the components DataSet, Timeline, Network, Graph2d and Graph3d. This blog is about
the latest developments, roadmap and releases.
</p> </p>
</div> </div>
<div class="postsMenu"> <div class="postsMenu">
<div class="postsMenuContent"> <div class="postsMenuContent">
Posts: Posts:
<a data-scroll class="post" href="#V4Release">- V4, ES6 and what's next</a>
<a data-scroll class="post" href="#Released version 3.11.0">- Released version 3.11.0</a> <a data-scroll class="post" href="#Released version 3.11.0">- Released version 3.11.0</a>
<a data-scroll class="post" href="#Released version 3.10.0">- Released version 3.10.0</a> <a data-scroll class="post" href="#Released version 3.10.0">- Released version 3.10.0</a>
<a data-scroll class="post" href="#Released version 3.9.0">- Released version 3.9.0</a> <a data-scroll class="post" href="#Released version 3.9.0">- Released version 3.9.0</a>
@ -199,13 +222,177 @@
</div> </div>
</div> </div>
<div class="post">
<div class="postHeader" id="V4Release">V4, ES6 and what's next</div>
<div class="postAuthor">by <a href="https://github.com/alexdm0">Alex</a></div>
<div class="postDate">22nd of May 2015</div>
<div class="postContent">
<p>
It’s been a long time coming but its finally here! We have just released the newest version of vis.js:
v4! This is a breaking release (hence the version number change). This means the options and the API
have been changed in such a way that it is no longer backwards compatible.
</p>
<p>
We know it is annoying to go back to your code and making the required changes but I guarantee that it
is for the best. To help with this migration, we have included an option validator to our new release.
This validator is currently applied on the network, timeline and graph2d. It checks the options you
supply if they are of the right type. If your options do not exist or if the type is wrong, it will give
you an understandable message with suggestions of options you may have meant. We think this will make
developing for vis a lot easier, as well as the migration from v3 to v4.
</p>
<p>
The biggest change in this release is in the network module. We have rewritten the network module in
full and the results are cleanly separated ES6 modules. The option structure has been changed to suit
this structure. The options have also been grouped, making it easier to document and understand. An
example of this is the options for fonts. It used to be fontColor, fontFace fontSize, which is now
grouped in a font object with {color:’’,face:’’,size:’’}. Also completely new is the clustering
mechanism. It used to be mostly automatic and twitchy but this new version gives all the control to the
user. This should make the clustering very useful and I’ll be happy to hear of missing features for
this!
</p>
<p>
We have moved to hammer.js 2 for all of our touch and click events and a lot of work has gone into
updating all the css elements (especially for timeline) to eliminate conflicts with large frameworks
that overload <i>everything</i>.
</p>
<p>
Over the last year, we have received a lot of issues on our Github page for which we are very thankful.
Whether it is a bug report, question or feature request, we handle all of them as quickly as we can and
with these big new rewrites it gives us a new perspective on what is important. We hope the validator
will prevent a lot of issues. The new examples have also been designed to more clearly show simple
options. We plan to provide links to JSBin for all options but this is a lot of work (for which we
wouldn’t mind some help ;) ).
</p>
<p>
So what’s next? Well the next module that really needs a good overhaul is the graph2d. This module is
used by us internally quite a lot and we need to improve the architecture and make it easy to extend it
with new graph types.
</p>
<p>
We want to unify the code between the timeline and the graph2d even more. The ideal result would be
using a graph2d as a group in the timeline or use the timeline items in a graph2d without nasty hacks.
The graph2d should get numeric x axis (so not necessarily only time), logarithmic axis and hopefully the
architecture will be flexible enough to allow the x and y axis to be interchanged. The API across the
modules will also be further unified, and I think we’ve made a great start with v4!
</p>
<p>
From all the modules currently in vis, the graph3d is the oldest and currently the one suffering a lack
of attention. If you are an excited user of the graph3d module and want to contribute, we’re open for
additions to the vis.js team! The graph3d is feature complete but a webgl implementation could be a
great improvement.
</p>
<p>
I cannot give a timeframe for the things I have discussed here, and we’re always open for ideas and
contributions. If you feel like you want to contribute, let us know :).
</p>
<h3>Changelog:</h3>
<h4>General</h4>
<ul>
<li>Changed the build scripts to include a transpilation of ES6 to ES5
(using <a href="http://babel.org">http://babel.org</a>), so we can use ES6 features in the vis.js
code.
When creating a custom bundle using browserify, one now needs to add a
transform step using <code>babelify</code>, this is described in README.md.
</li>
</ul>
<h4>Timeline</h4>
<ul>
<li>Integrated an option configurator and validator.</li>
<li>Implemented option <code>multiselect</code>, which is false by default.</li>
<li>Added method <code>setData({groups: groups, items: items})</code>.</li>
<li>Fixed range items not being displayed smaller than 10 pixels (twice the
padding). In order to have overflowing text, one should now apply css style
<code>.vis.timeline .item.range { overflow: visible; }</code> instead of
<code>.vis.timeline .item.range .content { overflow: visible; }</code>.
See example 18_range_overflow.html.
</li>
<li>Fixed invalid css names for time axis grid, renamed hours class names from
<code>4-8h</code> to <code>h4-h8</code>.
</li>
<li>Deprecated option <code>showCustomTime</code>. Use method <code>addCustomTime()</code> instead.</li>
<li>Deprecated event <code>finishedRedraw</code> as it's redundant.</li>
<li>Renamed option <code>animate</code> to <code>animation</code>, and changed it to be either a boolean
or an object <code>{duration: number, easingFunction: string}</code>.
</li>
<li>Fixed #831: items losing selection when their type changed.</li>
</ul>
<h4>Graph2d</h4>
<ul>
<li>New option structure.</li>
<li>Cleaned up docs.</li>
<li>Fixed #628: stacking order.</li>
<li>Fixed #624: sorting order.</li>
<li>Fixed #616: stacking with negative bars.</li>
<li>Fixed #728: alignment issues.</li>
<li>Fixed #716: Height of graph <code>2px</code> too large when configuring a fixed height.</li>
</ul>
<h4>Network</h4>
<p>The network has been completely rewritten. The new modular setup using ES6 classes makes
it future proof for maintainability, extendability and clarity. A summary of new features:</p>
<ul>
<li>New examples, categorized by topic.</li>
<li>New docs.</li>
<li>New option structure, adhering to the modular setup on the backend.</li>
<li>New events for user interaction.</li>
<li>New render events for drawing custom elements on the canvas.</li>
<li>New physics events for making a loading bar during stabilization.</li>
<li>A lot of new methods that make extending easier.</li>
<li>Manipulation system now works without the UI neccesarily.</li>
<li>Nodes and edges can cast shadows.</li>
<li>Configurator system to dynamically change almost all options.</li>
<li>Validator has been created for the network's options, warning you about typo's and suggesting
alternatives.
</li>
<li>Diamond shape for nodes.</li>
<li>Unified the label code so edges and nodes have the same label settings.</li>
<li>InheritColors for edges can be set to both, making a gradient fade between two node colors.</li>
<li>Redesigned the clustering system giving full control over it.</li>
<li>Random seed can be saved so the network will be the same every time you start it.</li>
<li>New physics solver based on ForceAtlas2 as implemented in gephi.]</li>
<li>New avoidOverlap option for physics.</li>
<li>Many, many bugfixes.</li>
</ul>
<h4>DataSet</h4>
<ul>
<li>Dropped support for Google visualization DataTable.</li>
<li>Dropped support for appending data returned by <code>DataSet.get()</code> to an existing
Array or DataTable.
</li>
</ul>
</div>
</div>
<div class="post"> <div class="post">
<div class="postHeader" id="Released version 3.11.0">Released version 3.11.0</div> <div class="postHeader" id="Released version 3.11.0">Released version 3.11.0</div>
<div class="postAuthor">by <a href="https://github.com/josdejong">Jos</a></div> <div class="postAuthor">by <a href="https://github.com/josdejong">Jos</a></div>
<div class="postDate">6th of March 2015</div> <div class="postDate">6th of March 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
Today we released vis.js version 3.11.0. The Timeline has gotten quite some attention in this release: For example, the Timeline finally has gotten more event handlers to enable custom behavior in a flexible way. Network is evolving at a steady speed. It's really great to get more and more substantial contributions from the community latest months! Thanks.
Today we released vis.js version 3.11.0. The Timeline has gotten quite some attention in this release:
For example, the Timeline finally has gotten more event handlers to enable custom behavior in a flexible
way. Network is evolving at a steady speed. It's really great to get more and more substantial
contributions from the community latest months! Thanks.
</p> </p>
<p>Changelog:</p> <p>Changelog:</p>
@ -213,15 +400,25 @@
<h3>Network</h3> <h3>Network</h3>
<ul> <ul>
<li>(added gradient coloring for lines, but set for release in 4.0 due to required refactoring of options).</li>
<li>Fixed bug where a network that has frozen physics would resume redrawing after setData, setOptions etc.</li>
<li>Added option to bypass default groups. If more groups are specified in the nodes than there are in the groups, loop over supplied groups instead of default.</li>
<li>(added gradient coloring for lines, but set for release in 4.0 due to required refactoring of
options).
</li>
<li>Fixed bug where a network that has frozen physics would resume redrawing after setData, setOptions
etc.
</li>
<li>Added option to bypass default groups. If more groups are specified in the nodes than there are in
the groups, loop over supplied groups instead of default.
</li>
<li>Added two new static smooth curves modes: curveCW and curve CCW.</li> <li>Added two new static smooth curves modes: curveCW and curve CCW.</li>
<li>Added request redraw for certain internal processes to reduce number of draw calls (performance improvements!).</li>
<li>Added request redraw for certain internal processes to reduce number of draw calls (performance
improvements!).
</li>
<li>Added pull request for usage of Icons. Thanks @Dude9177! <li>Added pull request for usage of Icons. Thanks @Dude9177!
<li>Allow hierarchical view to be set in setOptions.</li> <li>Allow hierarchical view to be set in setOptions.</li>
<li>Fixed manipulation bar for mobile.</li> <li>Fixed manipulation bar for mobile.</li>
<li>Fixed #670: Bug when updating data in a DataSet, when Network is connected to the DataSet via a DataView.</li>
<li>Fixed #670: Bug when updating data in a DataSet, when Network is connected to the DataSet via a
DataView.
</li>
<li>Fixed #688: Added a css class to be able to distinguish buttons "Edit node" and "Edit edge".</li> <li>Fixed #688: Added a css class to be able to distinguish buttons "Edit node" and "Edit edge".</li>
</ul> </ul>
@ -229,20 +426,25 @@
<ul> <ul>
<li>Implemented orientation option `'both'`, displaying a time axis both on top <li>Implemented orientation option `'both'`, displaying a time axis both on top
and bottom (#665).</li>
and bottom (#665).
</li>
<li>Implemented creating new range items by dragging in an empty space with the <li>Implemented creating new range items by dragging in an empty space with the
ctrl key down.</li>
ctrl key down.
</li>
<li>Implemented configuration option `order: function` to define a custom ordering <li>Implemented configuration option `order: function` to define a custom ordering
for the items (see #538, #234).</li>
for the items (see #538, #234).
</li>
<li>Implemented events `click`, `doubleClick`, and `contextMenu`.</li> <li>Implemented events `click`, `doubleClick`, and `contextMenu`.</li>
<li>Implemented method `getEventProperties(event)`.</li> <li>Implemented method `getEventProperties(event)`.</li>
<li>Fixed not property initializing with a DataView for groups.</li> <li>Fixed not property initializing with a DataView for groups.</li>
<li>Merged add custom timebar functionality, thanks @aytech! <li>Merged add custom timebar functionality, thanks @aytech!
<li>Fixed #664: end of item not restored when canceling a move event.</li> <li>Fixed #664: end of item not restored when canceling a move event.</li>
<li>Fixed #609: reduce the left/right dragarea when an item range is very small, <li>Fixed #609: reduce the left/right dragarea when an item range is very small,
so you can still move it as a whole.</li>
so you can still move it as a whole.
</li>
<li>Fixed #676: misalignment of background items when using subgroups and the <li>Fixed #676: misalignment of background items when using subgroups and the
group label's height is larger than the contents.</li>
group label's height is larger than the contents.
</li>
</ul> </ul>
<h3>Graph2d</h3> <h3>Graph2d</h3>
@ -268,7 +470,8 @@
<div class="postDate">11th of February 2015</div> <div class="postDate">11th of February 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
Version 3.10.0 has been released. Lots of improvements in Network, and some smaller bug fixes and improvements in Timeline and DataSet.
Version 3.10.0 has been released. Lots of improvements in Network, and some smaller bug fixes and
improvements in Timeline and DataSet.
</p> </p>
<p>Changelog:</p> <p>Changelog:</p>
@ -276,13 +479,20 @@
<h3>Network</h3> <h3>Network</h3>
<ul class="task-list"> <ul class="task-list">
<li>Added option bindToWindow (default true) to choose whether the keyboard binds are global or to the network div.</li>
<li>Improved images handling so broken images are shown on all references of images that are broken.</li>
<li>Added option bindToWindow (default true) to choose whether the keyboard binds are global or to the
network div.
</li>
<li>Improved images handling so broken images are shown on all references of images that are broken.
</li>
<li>Added getConnectedNodes method.</li> <li>Added getConnectedNodes method.</li>
<li>Added fontSizeMin, fontSizeMax, fontSizeMaxVisible, scaleFontWithValue, fontDrawThreshold to Nodes.</li>
<li>Added fontSizeMin, fontSizeMax, fontSizeMaxVisible, scaleFontWithValue, fontDrawThreshold to
Nodes.
</li>
<li>Added fade in of labels (on nodes) near the fontDrawThreshold.</li> <li>Added fade in of labels (on nodes) near the fontDrawThreshold.</li>
<li>Added nodes option to zoomExtent to zoom in on specific set of nodes.</li> <li>Added nodes option to zoomExtent to zoom in on specific set of nodes.</li>
<li>Added stabilizationIterationsDone event which fires at the end of the internal stabilization run. Does not imply that the network is stabilized.</li>
<li>Added stabilizationIterationsDone event which fires at the end of the internal stabilization run.
Does not imply that the network is stabilized.
</li>
<li>Added freezeSimulation method.</li> <li>Added freezeSimulation method.</li>
<li>Added clusterByZoom option.</li> <li>Added clusterByZoom option.</li>
<li>Added class name 'network-tooltip' to the tooltip, allowing custom styling.</li> <li>Added class name 'network-tooltip' to the tooltip, allowing custom styling.</li>
@ -296,7 +506,8 @@
<li>`Timeline.redraw()` now also recalculates the size of items.</li> <li>`Timeline.redraw()` now also recalculates the size of items.</li>
<li>Implemented option `snap: function` to customize snapping to nice date when dragging items.</li> <li>Implemented option `snap: function` to customize snapping to nice date when dragging items.</li>
<li>Implemented option `timeAxis: {scale: string, step: number}` to set fixed scale.</li> <li>Implemented option `timeAxis: {scale: string, step: number}` to set fixed scale.</li>
<li>Fixed width of range items not always being maintained when moving due to snapping to nice dates.</li>
<li>Fixed width of range items not always being maintained when moving due to snapping to nice dates.
</li>
<li>Fixed not being able to drag items to an other group on mobile devices.</li> <li>Fixed not being able to drag items to an other group on mobile devices.</li>
<li>Fixed `setWindow` not working when applying an interval larger than the configured `zoomMax`.</li> <li>Fixed `setWindow` not working when applying an interval larger than the configured `zoomMax`.</li>
</ul> </ul>
@ -306,7 +517,9 @@
<ul class="task-list"> <ul class="task-list">
<li>Added property `length` holding the total number of items to the `DataSet and `DataView`.</li> <li>Added property `length` holding the total number of items to the `DataSet and `DataView`.</li>
<li>Added a method `refresh()` to the `DataView`, to update filter results.</li> <li>Added a method `refresh()` to the `DataView`, to update filter results.</li>
<li>Fixed a bug in the `DataSet` returning an empty object instead of `null` when no item was found when using both a filter and specifying fields.</li>
<li>Fixed a bug in the `DataSet` returning an empty object instead of `null` when no item was found when
using both a filter and specifying fields.
</li>
</ul> </ul>
</div> </div>
@ -318,15 +531,18 @@
<div class="postDate">16th of January 2015</div> <div class="postDate">16th of January 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
We have been very busy fixing a lot of the open Github issues over the last week. We have also received multiple pull requests that could be added quickly! Special thanks to
We have been very busy fixing a lot of the open Github issues over the last week. We have also received
multiple pull requests that could be added quickly! Special thanks to
our community members contributing this release: @klmdb, @pavlos256, @T-rav, @brendon1982. our community members contributing this release: @klmdb, @pavlos256, @T-rav, @brendon1982.
Since this is a release with new features, we push the version number up to 3.9.0. Next up: big refactoring and version 4.0.0!
Since this is a release with new features, we push the version number up to 3.9.0. Next up: big
refactoring and version 4.0.0!
</p> </p>
<p>Changelog:</p> <p>Changelog:</p>
<h3> <h3>
<a class="anchor" href="#network" aria-hidden="true"><span class="octicon octicon-link"></span></a>Network</h3>
<a class="anchor" href="#network" aria-hidden="true"><span class="octicon octicon-link"></span></a>Network
</h3>
<ul class="task-list"> <ul class="task-list">
<li>Reverted change in image class, fixed bug #552</li> <li>Reverted change in image class, fixed bug #552</li>
@ -335,19 +551,28 @@
<li>Altered the Manipulation Mixin to be succesfully destroyed from memory when calling destroy();</li> <li>Altered the Manipulation Mixin to be succesfully destroyed from memory when calling destroy();</li>
<li>Improved drawing of arrowheads on smooth curves. #349</li> <li>Improved drawing of arrowheads on smooth curves. #349</li>
<li>Caught case where click originated on external DOM element and drag progressed to vis.</li> <li>Caught case where click originated on external DOM element and drag progressed to vis.</li>
<li>Added label stroke support to Nodes, Edges &amp; Groups as per-object or global settings. Thank you @klmdb!</li>
<li>Reverted patch that made nodes return to 'default' setting if no group was assigned to fix issue #561.
The correct way to 'remove' a group from a node is to assign it a different one.</li>
<li>Made the node/edge selected by the popup system the same as selected by the click-to-select system. Thank you @pavlos256!</li>
<li>Added label stroke support to Nodes, Edges &amp; Groups as per-object or global settings. Thank you
@klmdb!
</li>
<li>Reverted patch that made nodes return to 'default' setting if no group was assigned to fix issue
#561.
The correct way to 'remove' a group from a node is to assign it a different one.
</li>
<li>Made the node/edge selected by the popup system the same as selected by the click-to-select system.
Thank you @pavlos256!
</li>
<li>Improved edit edge control nodes positions, altered style a little.</li> <li>Improved edit edge control nodes positions, altered style a little.</li>
<li>Fixed issue #564 by resetting state to initial when no callback is performed in the return function.</li>
<li>Fixed issue #564 by resetting state to initial when no callback is performed in the return
function.
</li>
<li>Added condition to Repulsion similar to BarnesHut to ensure nodes do not overlap.</li> <li>Added condition to Repulsion similar to BarnesHut to ensure nodes do not overlap.</li>
<li>Added labelAlignment option to edges. Thanks @T-rav!</li> <li>Added labelAlignment option to edges. Thanks @T-rav!</li>
<li>Close active sessions in dataManipulation when calling setData().</li> <li>Close active sessions in dataManipulation when calling setData().</li>
</ul> </ul>
<h3> <h3>
<a class="anchor" href="#timeline" aria-hidden="true"><span class="octicon octicon-link"></span></a>Timeline</h3>
<a class="anchor" href="#timeline" aria-hidden="true"><span class="octicon octicon-link"></span></a>Timeline
</h3>
<ul class="task-list"> <ul class="task-list">
<li>Added byUser flag to options of the rangechange and rangechanged event.</li> <li>Added byUser flag to options of the rangechange and rangechanged event.</li>
@ -363,36 +588,81 @@
<div class="postDate">9th of January 2015</div> <div class="postDate">9th of January 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
I initially wanted to do a small recap of vis.js so far but it became larger (and more off topic) than I expected. To understand some of the motivations for our roadmap, <a href="#A look back on vis.js">take a look at the post below this one first</a>.
</p><p>
So now for our plans for 2015! We have added a lot of features over the last year, and we have to be careful that vis does not die of option-obesity. To mediate this we thought of a few solutions.
Firstly, we will make the docs collapsible using a similar system to <a href="https://www.jsoneditoronline.org/" target="_blank">Jos&prime;s great online JSON editor</a>. This is naturally a temporary fix but
the docs are one of the most important ways to get information. We think we ourselves may be the most frequent visitor of those pages so it's a good start!
</p><p>
Secondly, the actual changes, we plan to reorganize some of the option structure. This will unfortunately (but by definition) be a breaking change from our old versions. The new structure will be clearer and more intuitive. The work our current
users will have to do to update will be minimal. If you're using the options we reorganize, you'll have to update your options. Breaking releases are always a shame, but we feel it is necessary.
</p><p>
The third step we want to take is to go over the code of each module and modularize everything much more. This will make the code easier to maintain as we move away from very large .js files, as well as make it easier to expand on.
</p><p>
Once everything is modularized, we want to change the API to allow users to plug their own parts of vis together. As an example: You start a network module, plug in the type of node module, edge module, physics module and optionally navigation module (etc.) and you're good to go!
All of these modules will be individually configured. This means the huge list of options will be segmented into smaller, more manageable parts. Additionally, the docs will become smaller and clearer.
</p><p>
Of course, we do not want to abandon all our plug-and-play functionality! We will also start to supply more preconfigured constructors (i.e. a vis.BarChart that will give you a preconfigured graph2d module). Apart from these constructors
we will continue to publish examples which will include code snippets that you can use in your own project.
</p><p>
Once this has been completed, we expect there will be more options that accept functions as arguments which gives you more control over vis. Finally, because everything (well, more than now) would be split up into
modules, it becomes easier for the community to create additional modules, further improving vis!
</p><p>
The things I have listed here are the ideas that we have now. This is subject to change. We also cannot provide a timeline for this because we work on vis whenever we have time. No deadlines, no constrains, just when we have time.
</p><p>
To wrap up, there are a few things I did not mention here but I'd like to add to the post anyway.
I initially wanted to do a small recap of vis.js so far but it became larger (and more off topic) than I
expected. To understand some of the motivations for our roadmap, <a href="#A look back on vis.js">take a
look at the post below this one first</a>.
</p>
<p>
So now for our plans for 2015! We have added a lot of features over the last year, and we have to be
careful that vis does not die of option-obesity. To mediate this we thought of a few solutions.
Firstly, we will make the docs collapsible using a similar system to <a
href="https://www.jsoneditoronline.org/" target="_blank">Jos&prime;s great online JSON editor</a>.
This is naturally a temporary fix but
the docs are one of the most important ways to get information. We think we ourselves may be the most
frequent visitor of those pages so it's a good start!
</p>
<p>
Secondly, the actual changes, we plan to reorganize some of the option structure. This will
unfortunately (but by definition) be a breaking change from our old versions. The new structure will be
clearer and more intuitive. The work our current
users will have to do to update will be minimal. If you're using the options we reorganize, you'll have
to update your options. Breaking releases are always a shame, but we feel it is necessary.
</p>
<p>
The third step we want to take is to go over the code of each module and modularize everything much
more. This will make the code easier to maintain as we move away from very large .js files, as well as
make it easier to expand on.
</p>
<p>
Once everything is modularized, we want to change the API to allow users to plug their own parts of vis
together. As an example: You start a network module, plug in the type of node module, edge module,
physics module and optionally navigation module (etc.) and you're good to go!
All of these modules will be individually configured. This means the huge list of options will be
segmented into smaller, more manageable parts. Additionally, the docs will become smaller and clearer.
</p>
<p>
Of course, we do not want to abandon all our plug-and-play functionality! We will also start to supply
more preconfigured constructors (i.e. a vis.BarChart that will give you a preconfigured graph2d module).
Apart from these constructors
we will continue to publish examples which will include code snippets that you can use in your own
project.
</p>
<p>
Once this has been completed, we expect there will be more options that accept functions as arguments
which gives you more control over vis. Finally, because everything (well, more than now) would be split
up into
modules, it becomes easier for the community to create additional modules, further improving vis!
</p>
<p>
The things I have listed here are the ideas that we have now. This is subject to change. We also cannot
provide a timeline for this because we work on vis whenever we have time. No deadlines, no constrains,
just when we have time.
</p>
<p>
To wrap up, there are a few things I did not mention here but I'd like to add to the post anyway.
<ul> <ul>
<li>We want to improve the fusion of graph2d and the timeline, with the ideal that a graph2d can be used like a group in timeline now.</li>
<li>Examples will be split in simple option/configuration examples and larger, feature demonstration/exploration examples.</li>
<li>We want to improve the fusion of graph2d and the timeline, with the ideal that a graph2d can be used
like a group in timeline now.
</li>
<li>Examples will be split in simple option/configuration examples and larger, feature
demonstration/exploration examples.
</li>
<li>Graph2d will be expanded.</li> <li>Graph2d will be expanded.</li>
<li>We will move to hammer.js 2.0.</li> <li>We will move to hammer.js 2.0.</li>
<li>We will add features <a href="./featureRequests.html" target="_blank">from the list</a> when we can</li>
<li>We hope to keep up the <communi></communi>cation with our community!</li>
<li>We will add features <a href="./featureRequests.html" target="_blank">from the list</a> when we can
</li>
<li>We hope to keep up the
<communi></communi>
cation with our community!
</li>
</ul> </ul>
Let's make 2015 as good as last year! Let's make 2015 as good as last year!
</p> </p>
@ -405,24 +675,49 @@
<div class="postDate">9th of January 2015</div> <div class="postDate">9th of January 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
In April 2013, the initial commit was made for vis.js by <a href="https://github.com/josdejong">Jos</a> because the old CHAP LINKS library was becoming too large to expand and maintain.
Vis.js was a clean, new start using all the knowledge gathered from the CHAP library with the ideal that the new infrastructure would be more stable, faster and easier to maintain.
</p><p>
In January 2014, I joined the project and started to expand the Network module, which was called Graph back then. I have been working alongside Jos since then we have poured a lot of hours into vis.
</p><p>
On the 16th of April 2014, exactly a year after the initial commit, <a href="https://twitter.com/hackernewsbot/status/456231005678874624" target="_blank">a twitterbot with a lot of followers</a> notified
the world that we were featured on hackernews! This was the boost we needed to really reach a large community. We saw the amount of visitors and Github stars increase greatly over the months that followed.
</p><p>
The 14th of October, we have altered the license of vis.js to MIT or APACHE 2.0. This allowed <a href="http://tiddlywiki.com/" target="_blank">Tiddlywiki</a> to add vis.js to their keychain. From what we hear,
their developers really enjoy working with vis and we look forward to hearing how their community uses our software!
</p><p>
Now, we have a great community that helps out in issues, fixes our typos in the docs, notifies us of bugs and sometimes fixes them for us. We have received pull requests with new features and improvements and
it has been fantastic!
</p><p>
This post started out as the roadmap for vis in 2015, but the review was longer than I initially expected thereby deserving its own post.
</p><p>
Have fun using vis!
</p>
In April 2013, the initial commit was made for vis.js by <a href="https://github.com/josdejong">Jos</a>
because the old CHAP LINKS library was becoming too large to expand and maintain.
Vis.js was a clean, new start using all the knowledge gathered from the CHAP library with the ideal that
the new infrastructure would be more stable, faster and easier to maintain.
</p>
<p>
In January 2014, I joined the project and started to expand the Network module, which was called Graph
back then. I have been working alongside Jos since then we have poured a lot of hours into vis.
</p>
<p>
On the 16th of April 2014, exactly a year after the initial commit, <a
href="https://twitter.com/hackernewsbot/status/456231005678874624" target="_blank">a twitterbot with
a lot of followers</a> notified
the world that we were featured on hackernews! This was the boost we needed to really reach a large
community. We saw the amount of visitors and Github stars increase greatly over the months that
followed.
</p>
<p>
The 14th of October, we have altered the license of vis.js to MIT or APACHE 2.0. This allowed <a
href="http://tiddlywiki.com/" target="_blank">Tiddlywiki</a> to add vis.js to their keychain. From
what we hear,
their developers really enjoy working with vis and we look forward to hearing how their community uses
our software!
</p>
<p>
Now, we have a great community that helps out in issues, fixes our typos in the docs, notifies us of
bugs and sometimes fixes them for us. We have received pull requests with new features and improvements
and
it has been fantastic!
</p>
<p>
This post started out as the roadmap for vis in 2015, but the review was longer than I initially
expected thereby deserving its own post.
</p>
<p>
Have fun using vis!
</p>
</div> </div>
</div> </div>
@ -432,29 +727,59 @@
<div class="postDate">9th of January 2015</div> <div class="postDate">9th of January 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
The old website served us well, but now that we arrived in 2015... it is really time for an upgrade! We hope the new website is more informative, modern and a good promotion for vis.js!
It also allows us to keep the community updated through this blog and to <a href="./showcase/index.html" target="_blank">show off great projects that make use of vis.js in our showcase</a>.
</p><p>If you have made something and would like it featured,
please make an <a href="https://github.com/almende/vis/issues" target="_blank">issue on Github</a> with your project and how you'd like to be credited.</p>
The old website served us well, but now that we arrived in 2015... it is really time for an upgrade! We
hope the new website is more informative, modern and a good promotion for vis.js!
It also allows us to keep the community updated through this blog and to <a href="./showcase/index.html"
target="_blank">show off
great projects that make use of vis.js in our showcase</a>.
</p>
<p>If you have made something and would like it featured,
please make an <a href="https://github.com/almende/vis/issues" target="_blank">issue on Github</a> with
your project and how you'd like to be credited.</p>
</p><p> </p><p>
The new website is in beta so if anyone spots a typo or other mistake, please let us know on our <a href="https://www.github.com/almende/vis" target="_blank">Github</a> page.
</p><p>
There is no forum on this website. We prefer to keep all the communication with the community through Github. We believe this is the best solution so everyone only has to check the Github issues
when there is a problem or suggestion.
</p><p>
A big change introduced with our new website, is the <a href="./featureRequests.html" target="_blank">feature request page</a>. There are a lot of issues on Github that suggest features but we do not
always have time to implement these ourselves. On the other hand, there have been issues where people tell us they want to contribute but are now sure where to start. To mediate this (and to make a clear overview
for ourselves) we listed everything <a href="./featureRequests.html" target="_blank">here</a>.
</p><p>Once a feature is added to <a href="./featureRequests.html" target="_blank">the list</a>, it is not the end of the line. At each new release, we'll look at the list and see which features we may want to pick up for the next one. Discussions on these features
can still continue on the referenced Github issues. When we have added a feature to this list, we will close the Github issue that requested it to keep our open issues more of a bug-todo list. The main motivation for this
is because we have noticed that old bugs (on pages after 2) would be overlooked from time to time.
</p><p>
This feature page is an experiment. If it turns out that the community does not like us closing issues with open feature requests or if it does not have the impact we'd like it to have, we'll revert back to the old model.
</p><p>
We thank you all for using vis! Last year has seen a great increase in our user base and it is a great motivating factor knowing that our work is used by others!
</p><p>
Here's to a great 2015!
The new website is in beta so if anyone spots a typo or other mistake, please let us know on our <a
href="https://www.github.com/almende/vis" target="_blank">Github</a> page.
</p> </p>
<p>
There is no forum on this website. We prefer to keep all the communication with the community through
Github. We believe this is the best solution so everyone only has to check the Github issues
when there is a problem or suggestion.
</p>
<p>
A big change introduced with our new website, is the <a href="./featureRequests.html" target="_blank">feature
request page</a>. There are a lot of issues on Github that suggest features but we do not
always have time to implement these ourselves. On the other hand, there have been issues where people
tell us they want to contribute but are now sure where to start. To mediate this (and to make a clear
overview
for ourselves) we listed everything <a href="./featureRequests.html" target="_blank">here</a>.
</p>
<p>Once a feature is added to <a href="./featureRequests.html" target="_blank">the list</a>, it is not the
end of the line. At each new release, we'll look at the list and see which features we may want to pick
up for the next one. Discussions on these features
can still continue on the referenced Github issues. When we have added a feature to this list, we will
close the Github issue that requested it to keep our open issues more of a bug-todo list. The main
motivation for this
is because we have noticed that old bugs (on pages after 2) would be overlooked from time to time.
</p>
<p>
This feature page is an experiment. If it turns out that the community does not like us closing issues
with open feature requests or if it does not have the impact we'd like it to have, we'll revert back to
the old model.
</p>
<p>
We thank you all for using vis! Last year has seen a great increase in our user base and it is a great
motivating factor knowing that our work is used by others!
</p>
<p>
Here's to a great 2015!
</p>
</div> </div>
</div> </div>
@ -464,15 +789,20 @@
<div class="postDate">9th of January 2015</div> <div class="postDate">9th of January 2015</div>
<div class="postContent"> <div class="postContent">
<p> <p>
We're proud to present a new version of the vis.js library: 3.8.0! This release has a lot of new features and bugfixes, nearly all of which were suggested and/or discovered
by our community on <a href="https://www.github.com/almende/vis" target="_blank">Github</a>. A lot of the issues on Github have been handled in this release and it is likely to be the
last release before 4.0.0. The 4.0.0 release will break compatibility with old code (only options will be revisited on the API side) but more on that in <a href="#The 2015 roadmap for vis.js">the roadmap post</a>.
We're proud to present a new version of the vis.js library: 3.8.0! This release has a lot of new
features and bugfixes, nearly all of which were suggested and/or discovered
by our community on <a href="https://www.github.com/almende/vis" target="_blank">Github</a>. A lot of
the issues on Github have been handled in this release and it is likely to be the
last release before 4.0.0. The 4.0.0 release will break compatibility with old code (only options will
be revisited on the API side) but more on that in <a href="#The 2015 roadmap for vis.js">the roadmap
post</a>.
</p> </p>
<p>Changelog:</p> <p>Changelog:</p>
<h3> <h3>
<a class="anchor" href="#network" aria-hidden="true"><span class="octicon octicon-link"></span></a>Network</h3>
<a class="anchor" href="#network" aria-hidden="true"><span class="octicon octicon-link"></span></a>Network
</h3>
<ul class="task-list"> <ul class="task-list">
<li>Fixed flipping of hierarchical network on update when using RL and DU.</li> <li>Fixed flipping of hierarchical network on update when using RL and DU.</li>
@ -484,10 +814,14 @@
<li>Made global color options for edges overrule the inheritColors.</li> <li>Made global color options for edges overrule the inheritColors.</li>
<li>Improved cleaning up of the physics configuration on destroy and in options.</li> <li>Improved cleaning up of the physics configuration on destroy and in options.</li>
<li>Made nodes who lost their group revert back to default color.</li> <li>Made nodes who lost their group revert back to default color.</li>
<li>Changed group behaviour, groups now extend the options, not replace. This allows partial defines of color.</li>
<li>Changed group behaviour, groups now extend the options, not replace. This allows partial defines of
color.
</li>
<li>Fixed bug where box shaped nodes did not use hover color.</li> <li>Fixed bug where box shaped nodes did not use hover color.</li>
<li>Fixed Locales docs.</li> <li>Fixed Locales docs.</li>
<li>When hovering over a node that does not have a title, the title of one of the connected edges that HAS a title is no longer shown.</li>
<li>When hovering over a node that does not have a title, the title of one of the connected edges that
HAS a title is no longer shown.
</li>
<li>Fixed error in repulsion physics model.</li> <li>Fixed error in repulsion physics model.</li>
<li>Improved physics handling for smoother network simulation.</li> <li>Improved physics handling for smoother network simulation.</li>
<li>Fixed infinite loop when an image can not be found and no brokenImage is provided.</li> <li>Fixed infinite loop when an image can not be found and no brokenImage is provided.</li>
@ -498,7 +832,8 @@
</ul> </ul>
<h3> <h3>
<a class="anchor" href="#graph2d" aria-hidden="true"><span class="octicon octicon-link"></span></a>Graph2d</h3>
<a class="anchor" href="#graph2d" aria-hidden="true"><span class="octicon octicon-link"></span></a>Graph2d
</h3>
<ul class="task-list"> <ul class="task-list">
<li>Fixed round-off errors of zero on the y-axis.</li> <li>Fixed round-off errors of zero on the y-axis.</li>
@ -509,7 +844,8 @@
</ul> </ul>
<h3> <h3>
<a class="anchor" href="#timeline" aria-hidden="true"><span class="octicon octicon-link"></span></a>Timeline</h3>
<a class="anchor" href="#timeline" aria-hidden="true"><span class="octicon octicon-link"></span></a>Timeline
</h3>
<ul class="task-list"> <ul class="task-list">
<li>Implemented support for styling of the vertical grid.</li> <li>Implemented support for styling of the vertical grid.</li>
@ -519,7 +855,8 @@
</ul> </ul>
<h3> <h3>
<a class="anchor" href="#graph3d" aria-hidden="true"><span class="octicon octicon-link"></span></a>Graph3d</h3>
<a class="anchor" href="#graph3d" aria-hidden="true"><span class="octicon octicon-link"></span></a>Graph3d
</h3>
<ul class="task-list"> <ul class="task-list">
<li>Fixed mouse coordinates for tooltips.</li> <li>Fixed mouse coordinates for tooltips.</li>
@ -527,11 +864,11 @@
</div> </div>
</div> </div>
<br />
<br />
<br />
<br />
<br />
<br/>
<br/>
<br/>
<br/>
<br/>
</div> </div>
<!-- Bootstrap core JavaScript <!-- Bootstrap core JavaScript

+ 6
- 6
css/examples.css View File

@ -64,14 +64,14 @@ a.exampleLink:before {
content:''; content:'';
display:inline-block; display:inline-block;
margin-left:15px; margin-left:15px;
width: 15px;
height: 10px;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-left: 5px solid #688fba;
margin-right:5px;
width: 2px;
height: 2px;
border-radius: 50%;
border:3px solid rgb(46, 109, 164);
} }
a.exampleLink { a.exampleLink {
display:block;
display:inline-block;
text-decoration: underline; text-decoration: underline;
} }

+ 45
- 45
network_examples.html View File

@ -66,67 +66,67 @@
<a class='exampleLink' href="examples/network/basic_usage.html">basic usage</a> <a class='exampleLink' href="examples/network/basic_usage.html">basic usage</a>
<h3>node styles</h3> <h3>node styles</h3>
<a class='exampleLink' href="examples/network/nodeStyles/colors.html">colors</a>
<a class='exampleLink' href="examples/network/nodeStyles/groups.html">groups</a>
<a class='exampleLink' href="examples/network/nodeStyles/customGroups.html">custom groups</a>
<a class='exampleLink' href="examples/network/nodeStyles/HTML_in_Nodes.html">HTML in nodes</a>
<a class='exampleLink' href="examples/network/nodeStyles/icons.html">icons (Fontawesome and Ionicons)</a>
<a class='exampleLink' href="examples/network/nodeStyles/images.html">images</a>
<a class='exampleLink' href="examples/network/nodeStyles/circular_images.html">circular images</a>
<a class='exampleLink' href="examples/network/nodeStyles/shadows.html">node shadows</a>
<a class='exampleLink' href="examples/network/nodeStyles/shapes.html">node shapes</a>
<a class='exampleLink' href="examples/network/nodeStyles/colors.html">colors</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/groups.html">groups</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/customGroups.html">custom groups</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/HTML_in_Nodes.html">HTML in nodes</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/icons.html">icons (Fontawesome and Ionicons)</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/images.html">images</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/circular_images.html">circular images</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/shadows.html">node shadows</a><br />
<a class='exampleLink' href="examples/network/nodeStyles/shapes.html">node shapes</a><br />
<h3>edge styles</h3> <h3>edge styles</h3>
<a class='exampleLink' href="examples/network/edgeStyles/arrows.html">arrows (also combined with dashes)</a>
<a class='exampleLink' href="examples/network/edgeStyles/colors.html">different colors</a>
<a class='exampleLink' href="examples/network/edgeStyles/dashes.html">dashes</a>
<a class='exampleLink' href="examples/network/edgeStyles/smooth.html">smooth curves</a>
<a class='exampleLink' href="examples/network/edgeStyles/smoothWorldCup.html">smooth curves in action</a>
<a class='exampleLink' href="examples/network/edgeStyles/arrows.html">arrows (also combined with dashes)</a><br />
<a class='exampleLink' href="examples/network/edgeStyles/colors.html">different colors</a><br />
<a class='exampleLink' href="examples/network/edgeStyles/dashes.html">dashes</a><br />
<a class='exampleLink' href="examples/network/edgeStyles/smooth.html">smooth curves</a><br />
<a class='exampleLink' href="examples/network/edgeStyles/smoothWorldCup.html">smooth curves in action</a><br />
<h3>labels</h3> <h3>labels</h3>
<a class='exampleLink' href="examples/network/labels/label_alignment.html">label alignment (for edges only)</a>
<a class='exampleLink' href="examples/network/labels/label_background.html">label background</a>
<a class='exampleLink' href="examples/network/labels/label_color_and_size.html">colors and sizes</a>
<a class='exampleLink' href="examples/network/labels/label_stroke.html">label stroke</a>
<a class='exampleLink' href="examples/network/labels/multiline_text.html">multiline text</a>
<a class='exampleLink' href="examples/network/labels/label_alignment.html">label alignment (for edges only)</a><br />
<a class='exampleLink' href="examples/network/labels/label_background.html">label background</a><br />
<a class='exampleLink' href="examples/network/labels/label_color_and_size.html">colors and sizes</a><br />
<a class='exampleLink' href="examples/network/labels/label_stroke.html">label stroke</a><br />
<a class='exampleLink' href="examples/network/labels/multiline_text.html">multiline text</a><br />
<h3>layout</h3> <h3>layout</h3>
<a class='exampleLink' href="examples/network/layout/hierarchical_layout.html">hierarchical layout</a>
<a class='exampleLink' href="examples/network/layout/hierarchical_layout_methods.html">hierarchical layout - different methods</a>
<a class='exampleLink' href="examples/network/layout/hierarchical_layout_userdefined.html">hierarchical layout - user defined</a>
<a class='exampleLink' href="examples/network/layout/randomSeed.html">set the random seed so every network will be the same</a>
<a class='exampleLink' href="examples/network/layout/hierarchical_layout.html">hierarchical layout</a><br />
<a class='exampleLink' href="examples/network/layout/hierarchical_layout_methods.html">hierarchical layout - different methods</a><br />
<a class='exampleLink' href="examples/network/layout/hierarchical_layout_userdefined.html">hierarchical layout - user defined</a><br />
<a class='exampleLink' href="examples/network/layout/randomSeed.html">set the random seed so every network will be the same</a><br />
<h3>events</h3> <h3>events</h3>
<a class='exampleLink' href="examples/network/events/interactionEvents.html">interaction events, click, rightclick, drag etc.</a>
<a class='exampleLink' href="examples/network/events/physicsEvents.html">physics events, stabilization etc.</a>
<a class='exampleLink' href="examples/network/events/renderEvents.html">rendering events, use to draw custom items on the canvas.</a>
<a class='exampleLink' href="examples/network/events/interactionEvents.html">interaction events, click, rightclick, drag etc.</a><br />
<a class='exampleLink' href="examples/network/events/physicsEvents.html">physics events, stabilization etc.</a><br />
<a class='exampleLink' href="examples/network/events/renderEvents.html">rendering events, use to draw custom items on the canvas.</a><br />
<h3>dynamic data</h3> <h3>dynamic data</h3>
<a class='exampleLink' href="examples/network/data/datasets.html">dataset for dynamic data</a>
<a class='exampleLink' href="examples/network/data/dynamic_data.html">dynamic data, playground</a>
<a class='exampleLink' href="examples/network/data/importing_from_gephi.html">importing data from gephi</a>
<a class='exampleLink' href="examples/network/data/scaling_custom.html">scaling the nodes with the value.</a>
<a class='exampleLink' href="examples/network/data/scaling_nodes_edges.html">scaling the nodes and edges with the value.</a>
<a class='exampleLink' href="examples/network/data/scaling_nodes_edges_labels.html">scaling the nodes, edges and labels with the value.</a>
<a class='exampleLink' href="examples/network/data/datasets.html">dataset for dynamic data</a><br />
<a class='exampleLink' href="examples/network/data/dynamic_data.html">dynamic data, playground</a><br />
<a class='exampleLink' href="examples/network/data/importing_from_gephi.html">importing data from gephi</a><br />
<a class='exampleLink' href="examples/network/data/scaling_custom.html">scaling the nodes with the value.</a><br />
<a class='exampleLink' href="examples/network/data/scaling_nodes_edges.html">scaling the nodes and edges with the value.</a><br />
<a class='exampleLink' href="examples/network/data/scaling_nodes_edges_labels.html">scaling the nodes, edges and labels with the value.</a><br />
<h3>physics</h3> <h3>physics</h3>
<a class='exampleLink' href="examples/network/physics/physicsConfiguration.html">physics configuration</a>
<a class='exampleLink' href="examples/network/physics/physicsConfiguration.html">physics configuration</a><br />
<h3>example applications</h3> <h3>example applications</h3>
<a class='exampleLink' href="examples/network/exampleApplications/les_miserables.html">les miserables cast</a>
<a class='exampleLink' href="examples/network/exampleApplications/loadingBar.html">loading bar during stabilization</a>
<a class='exampleLink' href="examples/network/exampleApplications/neighbourhood_highlight.html">neighbourhood heighlight</a>
<a class='exampleLink' href="examples/network/exampleApplications/nodeLegend.html">using nodes as a legend</a>
<a class='exampleLink' href="examples/network/exampleApplications/worldCupPerformance.html">performance test with the worldcup data</a>
<a class='exampleLink' href="examples/network/exampleApplications/les_miserables.html">les miserables cast</a><br />
<a class='exampleLink' href="examples/network/exampleApplications/loadingBar.html">loading bar during stabilization</a><br />
<a class='exampleLink' href="examples/network/exampleApplications/neighbourhood_highlight.html">neighbourhood heighlight</a><br />
<a class='exampleLink' href="examples/network/exampleApplications/nodeLegend.html">using nodes as a legend</a><br />
<a class='exampleLink' href="examples/network/exampleApplications/worldCupPerformance.html">performance test with the worldcup data</a><br />
<h3>other</h3> <h3>other</h3>
<a class='exampleLink' href="examples/network/other/animationShowcase.html">animation showcase</a>
<a class='exampleLink' href="examples/network/other/clustering.html">clustering possibilities</a>
<a class='exampleLink' href="examples/network/other/clusteringByZoom.html">clustering by zoom</a>
<a class='exampleLink' href="examples/network/other/configuration.html">dynamic configuration</a>
<a class='exampleLink' href="examples/network/other/manipulation.html">manipulation interface and localization</a>
<a class='exampleLink' href="examples/network/other/navigation.html">navigation buttons and keyboard shortcuts</a>
<a class='exampleLink' href="examples/network/other/performance.html">performance test with scale free network, customize the amount of nodes</a>
<a class='exampleLink' href="examples/network/other/animationShowcase.html">animation showcase</a><br />
<a class='exampleLink' href="examples/network/other/clustering.html">clustering possibilities</a><br />
<a class='exampleLink' href="examples/network/other/clusteringByZoom.html">clustering by zoom</a><br />
<a class='exampleLink' href="examples/network/other/configuration.html">dynamic configuration</a><br />
<a class='exampleLink' href="examples/network/other/manipulation.html">manipulation interface and localization</a><br />
<a class='exampleLink' href="examples/network/other/navigation.html">navigation buttons and keyboard shortcuts</a><br />
<a class='exampleLink' href="examples/network/other/performance.html">performance test with scale free network, customize the amount of nodes</a><br />
</div> </div>
<br /> <br />
<br /> <br />

+ 35
- 35
timeline_examples.html View File

@ -62,55 +62,55 @@
This page contains examples which show how to use Timeline. For the documentation, please click the button below: <br><br> This page contains examples which show how to use Timeline. For the documentation, please click the button below: <br><br>
<a class="btn btn-primary" href="./docs/timeline" role="button">View docs »</a> <a class="btn btn-primary" href="./docs/timeline" role="button">View docs »</a>
<h3>basic_usage</h3>
<a class='exampleLink' href="examples/timeline/basicUsage.html">basic usage</a>
<h3>basic usage</h3>
<a class='exampleLink' href="examples/timeline/basicUsage.html">basic usage</a><br />
<h3>interaction</h3> <h3>interaction</h3>
<a class='exampleLink' href="examples/timeline/interaction/animateWindow.html">animate window</a>
<a class='exampleLink' href="examples/timeline/interaction/clickToUse.html">click to use</a>
<a class='exampleLink' href="examples/timeline/interaction/eventListeners.html">event listeners</a>
<a class='exampleLink' href="examples/timeline/interaction/limitMoveAndZoom.html">limit move and zoom of the window</a>
<a class='exampleLink' href="examples/timeline/interaction/navigationMenu.html">navigation menu</a>
<a class='exampleLink' href="examples/timeline/interaction/setSelection.html">set selection</a>
<a class='exampleLink' href="examples/timeline/interaction/animateWindow.html">animate window</a><br />
<a class='exampleLink' href="examples/timeline/interaction/clickToUse.html">click to use</a><br />
<a class='exampleLink' href="examples/timeline/interaction/eventListeners.html">event listeners</a><br />
<a class='exampleLink' href="examples/timeline/interaction/limitMoveAndZoom.html">limit move and zoom of the window</a><br />
<a class='exampleLink' href="examples/timeline/interaction/navigationMenu.html">navigation menu</a><br />
<a class='exampleLink' href="examples/timeline/interaction/setSelection.html">set selection</a><br />
<h3>editing</h3> <h3>editing</h3>
<a class='exampleLink' href="examples/timeline/editing/customSnappingOfItems.html">custom snapping of items</a>
<a class='exampleLink' href="examples/timeline/editing/editingItems.html">editing items</a>
<a class='exampleLink' href="examples/timeline/editing/editingItemsCallbacks.html">editing items, manipulate using callbacks</a>
<a class='exampleLink' href="examples/timeline/editing/updateDataOnEvent.html">update data on event</a>
<a class='exampleLink' href="examples/timeline/editing/customSnappingOfItems.html">custom snapping of items</a><br />
<a class='exampleLink' href="examples/timeline/editing/editingItems.html">editing items</a><br />
<a class='exampleLink' href="examples/timeline/editing/editingItemsCallbacks.html">editing items, manipulate using callbacks</a><br />
<a class='exampleLink' href="examples/timeline/editing/updateDataOnEvent.html">update data on event</a><br />
<h3>items</h3> <h3>items</h3>
<a class='exampleLink' href="examples/timeline/items/htmlContents.html">HTML contents</a>
<a class='exampleLink' href="examples/timeline/items/pointItems.html">point items</a>
<a class='exampleLink' href="examples/timeline/items/backgroundAreas.html">background areas</a>
<a class='exampleLink' href="examples/timeline/items/backgroundAreasWithGroups.html">background areas with groups</a>
<a class='exampleLink' href="examples/timeline/items/itemOrdering.html">item ordering</a>
<a class='exampleLink' href="examples/timeline/items/rangeOverflowItem.html">range overflow item</a>
<a class='exampleLink' href="examples/timeline/items/htmlContents.html">HTML contents</a><br />
<a class='exampleLink' href="examples/timeline/items/pointItems.html">point items</a><br />
<a class='exampleLink' href="examples/timeline/items/backgroundAreas.html">background areas</a><br />
<a class='exampleLink' href="examples/timeline/items/backgroundAreasWithGroups.html">background areas with groups</a><br />
<a class='exampleLink' href="examples/timeline/items/itemOrdering.html">item ordering</a><br />
<a class='exampleLink' href="examples/timeline/items/rangeOverflowItem.html">range overflow item</a><br />
<h3>groups</h3> <h3>groups</h3>
<a class='exampleLink' href="examples/timeline/groups/groups.html">groups</a>
<a class='exampleLink' href="examples/timeline/groups/groupsOrdering.html">ordering of groups</a>
<a class='exampleLink' href="examples/timeline/groups/subgroups.html">subgroups</a>
<a class='exampleLink' href="examples/timeline/groups/groups.html">groups</a><br />
<a class='exampleLink' href="examples/timeline/groups/groupsOrdering.html">ordering of groups</a><br />
<a class='exampleLink' href="examples/timeline/groups/subgroups.html">subgroups</a><br />
<h3>styling</h3> <h3>styling</h3>
<a class='exampleLink' href="examples/timeline/styling/itemClassNames.html">item class names</a>
<a class='exampleLink' href="examples/timeline/styling/itemTemplates.html">item templates</a>
<a class='exampleLink' href="examples/timeline/styling/axisOrientation.html">axis orientation</a>
<a class='exampleLink' href="examples/timeline/styling/customCss.html">custom CSS</a>
<a class='exampleLink' href="examples/timeline/styling/gridStyling.html">grid styling</a>
<a class='exampleLink' href="examples/timeline/styling/itemClassNames.html">item class names</a><br />
<a class='exampleLink' href="examples/timeline/styling/itemTemplates.html">item templates</a><br />
<a class='exampleLink' href="examples/timeline/styling/axisOrientation.html">axis orientation</a><br />
<a class='exampleLink' href="examples/timeline/styling/customCss.html">custom CSS</a><br />
<a class='exampleLink' href="examples/timeline/styling/gridStyling.html">grid styling</a><br />
<h3>data handling</h3> <h3>data handling</h3>
<a class='exampleLink' href="examples/timeline/dataHandling/dataSerialization.html">data serialization</a>
<a class='exampleLink' href="examples/timeline/dataHandling/loadExternalData.html">load external data</a>
<a class='exampleLink' href="examples/timeline/dataHandling/dataSerialization.html">data serialization</a><br />
<a class='exampleLink' href="examples/timeline/dataHandling/loadExternalData.html">load external data</a><br />
<h3>other</h3> <h3>other</h3>
<a class='exampleLink' href="examples/timeline/other/customTimeBars.html">custom time bars</a>
<a class='exampleLink' href="examples/timeline/other/dataAttributes.html">data attributes</a>
<a class='exampleLink' href="examples/timeline/other/dataAttributesAll.html">all data attributes</a>
<a class='exampleLink' href="examples/timeline/other/groupsPerformance.html">perforance of groups</a>
<a class='exampleLink' href="examples/timeline/other/hidingPeriods.html">hiding periods</a>
<a class='exampleLink' href="examples/timeline/other/localization.html">localization</a>
<a class='exampleLink' href="examples/timeline/other/performance.html">performance</a>
<a class='exampleLink' href="examples/timeline/other/customTimeBars.html">custom time bars</a><br />
<a class='exampleLink' href="examples/timeline/other/dataAttributes.html">data attributes</a><br />
<a class='exampleLink' href="examples/timeline/other/dataAttributesAll.html">all data attributes</a><br />
<a class='exampleLink' href="examples/timeline/other/groupsPerformance.html">perforance of groups</a><br />
<a class='exampleLink' href="examples/timeline/other/hidingPeriods.html">hiding periods</a><br />
<a class='exampleLink' href="examples/timeline/other/localization.html">localization</a><br />
<a class='exampleLink' href="examples/timeline/other/performance.html">performance</a><br />
</div> </div>
<br /> <br />

Loading…
Cancel
Save