|
|
- <!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">
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <meta name="description" content="">
- <meta name="author" content="">
- <link rel="icon" HREF="favicon.ico">
- <title>vis.js - A dynamic, browser based visualization library.</title>
-
- <!-- Bootstrap core CSS -->
- <link href="./css/bootstrap.css" rel="stylesheet">
-
- <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
- <!--[if lt IE 9]>
- <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
- <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
- <![endif]-->
-
-
- <script src="./js/smooth-scroll.min.js"></script>
- <script language="JavaScript">
- smoothScroll.init();
- </script>
-
- <style>
-
- html {
- height: 100%;
- }
-
- body {
- font-family: Lustria, Georgia, Times, "Times New Roman", serif !important;
- height: 100%;
- background: url('./images/crosswordStrong.png') /* Background pattern from subtlepatterns.com */
- }
-
- img.icon {
- position: relative;
- top: -2px;
- }
-
- div.navbar-wrapper {
- background-color: #07508E;
- border-bottom: 3px solid #ffffff;
- font-size: 16px;
- }
-
- div.center {
- width: 970px;
- margin-left: auto;
- margin-right: auto;
- }
-
- div.container.small {
- max-width: 970px;
- }
-
- div.blogHeader {
- margin-left: auto;
- margin-right: auto;
- text-align: center;
- width: 910px;
- padding: 0px 30px 0px 30px;
- margin-top: -150px;
- color: #ffffff;
- text-shadow: 1px 1px 3px rgba(0, 0, 0, 1);
- margin-bottom: 60px;
- }
-
- div.post {
- margin: 40px 80px 0px 190px;
- padding: 10px 10px 10px 20px;;
- border: 1px solid #eeeeee;
- border-radius: 3px;
- }
-
- div.postHeader {
- float: left;
- font-size: 30px;
- }
-
- div.postDate {
- margin-top: 19px;
- float: right;
- font-size: 12px;
- }
-
- div.postAuthor {
- padding-left: 5px;
- margin-top: 19px;
- margin-right: 20px;
- float: right;
- font-size: 12px;
- }
-
- div.postContent {
- font-size: 16px;
- margin-top: 50px;
- padding: 10px 20px 0px 20px;
- text-align: justify;
- }
-
- div.full {
- min-height: 100%;
- box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.4);
- padding: 0px;
- background-color: #ffffff;
- }
-
- div.postsMenu {
- position: relative;
- left: -15px;
- top: -50px;
- width: 0px;
- height: 0px;
- }
-
- 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;
- }
-
- a.post {
- font-size: 12px;
- text-decoration: none;
- color: #ffffff;
- display: block;
- margin: 10px 0px 0px 0px;
- }
- </style>
- </head>
- <!-- NAVBAR
- ================================================== -->
- <body>
-
- <div class="navbar-wrapper">
- <div class="container">
- <nav class="navbar navbar-inverse navbar-static-top" role="navigation">
- <div class="container">
- <div class="navbar-header">
- <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="icon-bar"></span>
- <span class="icon-bar"></span>
- <span class="icon-bar"></span>
- </button>
- <a class="navbar-brand hidden-sm" href="./index.html">vis.js</a>
- </div>
- <div id="navbar" class="navbar-collapse collapse">
- <ul class="nav navbar-nav">
- <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 class="active"><a href="#">Blog</a></li>
- <li><a href="./index.html#download_install">Download</a></li>
- <li><a href="./showcase/index.html">Showcase</a></li>
- <li><a href="./index.html#contribute">Contribute</a></li>
- <li><a href="./featureRequests.html">Feature requests</a></li>
- <li><a href="./index.html#licenses">License</a></li>
- </ul>
- </div>
- </div>
- </nav>
-
- </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>
-
- <div class="container full small">
- <div class="center">
- <img src="./images/wallHeader.png">
- </div>
-
- <div class="blogHeader">
- <h1>vis.js</h1>
-
- <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.
- </p>
- </div>
-
- <div class="postsMenu">
- <div class="postsMenuContent">
- 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.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="#The 2015 roadmap for vis.js">- The 2015 roadmap for vis.js</a>
- <a data-scroll class="post" href="#A look back on vis.js">- A look back on vis.js</a>
- <a data-scroll class="post" href="#New website for vis.js!">- New website for vis.js!</a>
- <a data-scroll class="post" href="#Released version 3.8.0">- Released version 3.8.0</a>
- </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="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="postDate">6th of March 2015</div>
- <div class="postContent">
- <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.
- </p>
-
- <p>Changelog:</p>
-
- <h3>Network</h3>
-
- <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 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 pull request for usage of Icons. Thanks @Dude9177!
- <li>Allow hierarchical view to be set in setOptions.</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 #688: Added a css class to be able to distinguish buttons "Edit node" and "Edit edge".</li>
- </ul>
-
- <h3>Timeline</h3>
-
- <ul>
- <li>Implemented orientation option `'both'`, displaying a time axis both on top
- and bottom (#665).
- </li>
- <li>Implemented creating new range items by dragging in an empty space with the
- ctrl key down.
- </li>
- <li>Implemented configuration option `order: function` to define a custom ordering
- for the items (see #538, #234).
- </li>
- <li>Implemented events `click`, `doubleClick`, and `contextMenu`.</li>
- <li>Implemented method `getEventProperties(event)`.</li>
- <li>Fixed not property initializing with a DataView for groups.</li>
- <li>Merged add custom timebar functionality, thanks @aytech!
- <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,
- so you can still move it as a whole.
- </li>
- <li>Fixed #676: misalignment of background items when using subgroups and the
- group label's height is larger than the contents.
- </li>
- </ul>
-
- <h3>Graph2d</h3>
-
- <ul>
- <li>Implemented events `click`, `doubleClick`, and `contextMenu`.</li>
- <li>Implemented method `getEventProperties(event)`.</li>
- </ul>
-
- <h3>DataSet/DataView</h3>
-
- <ul>
- <li>Implemented support for mapping field names. Thanks @spatialillusions.</li>
- <li>Fixed #670: DataView not passing a data property on update events (see #670)
- </ul>
-
- </div>
- </div>
-
- <div class="post">
- <div class="postHeader" id="Released version 3.10.0">Released version 3.10.0</div>
- <div class="postAuthor">by <a href="https://github.com/josdejong">Jos</a></div>
- <div class="postDate">11th of February 2015</div>
- <div class="postContent">
- <p>
- 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>Changelog:</p>
-
- <h3>Network</h3>
-
- <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 getConnectedNodes method.</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 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 freezeSimulation method.</li>
- <li>Added clusterByZoom option.</li>
- <li>Added class name 'network-tooltip' to the tooltip, allowing custom styling.</li>
- <li>Fixed bug when redrawing was not right on zoomed-out browsers.</li>
- <li>Added opacity option to edges. Opacity is only used for the unselected state.</li>
- <li>Fixed bug where selections from removed data elements persisted.</li>
- </ul>
-
- <h3>Timeline</h3>
- <ul class="task-list">
- <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 `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 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>
- </ul>
-
- <h3>DataSet/DataView</h3>
-
- <ul class="task-list">
- <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>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>
-
- </div>
- </div>
-
- <div class="post">
- <div class="postHeader" id="Released version 3.9.0">Released version 3.9.0</div>
- <div class="postAuthor">by <a href="https://github.com/AlexDM0">Alex</a></div>
- <div class="postDate">16th of January 2015</div>
- <div class="postContent">
- <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
- 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!
- </p>
-
- <p>Changelog:</p>
-
- <h3>
- <a class="anchor" href="#network" aria-hidden="true"><span class="octicon octicon-link"></span></a>Network
- </h3>
-
- <ul class="task-list">
- <li>Reverted change in image class, fixed bug #552</li>
- <li>Improved the fontFill offset between different browsers. #365</li>
- <li>Fixed dashed lines on firefox on Unix systems</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>Caught case where click originated on external DOM element and drag progressed to vis.</li>
- <li>Added label stroke support to Nodes, Edges & 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>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 labelAlignment option to edges. Thanks @T-rav!</li>
- <li>Close active sessions in dataManipulation when calling setData().</li>
- </ul>
-
- <h3>
- <a class="anchor" href="#timeline" aria-hidden="true"><span class="octicon octicon-link"></span></a>Timeline
- </h3>
-
- <ul class="task-list">
- <li>Added byUser flag to options of the rangechange and rangechanged event.</li>
- </ul>
-
-
- </div>
- </div>
-
- <div class="post">
- <div class="postHeader" id="The 2015 roadmap for vis.js">The 2015 roadmap for vis.js</div>
- <div class="postAuthor">by <a href="https://github.com/AlexDM0">Alex</a></div>
- <div class="postDate">9th of January 2015</div>
- <div class="postContent">
- <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′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>
- <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>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>
- </ul>
- Let's make 2015 as good as last year!
- </p>
- </div>
- </div>
-
- <div class="post">
- <div class="postHeader" id="A look back on vis.js">A look back on vis.js</div>
- <div class="postAuthor">by <a href="https://github.com/AlexDM0">Alex</a></div>
- <div class="postDate">9th of January 2015</div>
- <div class="postContent">
- <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 class="post">
- <div class="postHeader" id="New website for vis.js!">New website for vis.js!</div>
- <div class="postAuthor">by <a href="https://github.com/AlexDM0">Alex</a></div>
- <div class="postDate">9th of January 2015</div>
- <div class="postContent">
- <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>
- 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!
- </p>
- </div>
- </div>
-
- <div class="post">
- <div class="postHeader" id="Released version 3.8.0">Released version 3.8.0</div>
- <div class="postAuthor">by <a href="https://github.com/AlexDM0">Alex</a></div>
- <div class="postDate">9th of January 2015</div>
- <div class="postContent">
- <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>.
- </p>
-
- <p>Changelog:</p>
-
- <h3>
- <a class="anchor" href="#network" aria-hidden="true"><span class="octicon octicon-link"></span></a>Network
- </h3>
-
- <ul class="task-list">
- <li>Fixed flipping of hierarchical network on update when using RL and DU.</li>
- <li>Added zoomExtentOnStabilize option to network.</li>
- <li>Improved destroy function, added them to the examples.</li>
- <li>Nodes now have bounding boxes that are used for zoomExtent.</li>
- <li>Made physics more stable (albeit a little slower).</li>
- <li>Added a check so only one 'activator' overlay is created on clickToUse.</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>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>Fixed bug where box shaped nodes did not use hover color.</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>Fixed error in repulsion physics model.</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>Added getBoundingBox method.</li>
- <li>Community fix for SVG images in IE11, thanks @dponch!</li>
- <li>Fixed repeating stabilized event when the network is already stabilized.</li>
- <li>Added circularImages, thanks for the contribution @brendon1982!</li>
- </ul>
-
- <h3>
- <a class="anchor" href="#graph2d" aria-hidden="true"><span class="octicon octicon-link"></span></a>Graph2d
- </h3>
-
- <ul class="task-list">
- <li>Fixed round-off errors of zero on the y-axis.</li>
- <li>added show major/minor lines options to dataAxis.</li>
- <li>Fixed adapting to width and height changes.</li>
- <li>Added a check so only one 'activator' overlay is created on clickToUse.</li>
- <li>DataAxis width option now draws correctly.</li>
- </ul>
-
- <h3>
- <a class="anchor" href="#timeline" aria-hidden="true"><span class="octicon octicon-link"></span></a>Timeline
- </h3>
-
- <ul class="task-list">
- <li>Implemented support for styling of the vertical grid.</li>
- <li>Support for custom date formatting of the labels on the time axis.</li>
- <li>added show major/minor lines options to timeline.</li>
- <li>Added a check so only one 'activator' overlay is created on clickToUse.</li>
- </ul>
-
- <h3>
- <a class="anchor" href="#graph3d" aria-hidden="true"><span class="octicon octicon-link"></span></a>Graph3d
- </h3>
-
- <ul class="task-list">
- <li>Fixed mouse coordinates for tooltips.</li>
- </ul>
-
- </div>
- </div>
- <br/>
- <br/>
- <br/>
- <br/>
- <br/>
- </div>
-
- <!-- Bootstrap core JavaScript
- ================================================== -->
- <!-- Placed at the end of the document so the pages load faster -->
- <script src="./js/jquery.min.js"></script>
- <script src="./js/bootstrap.min.js"></script>
- <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
- <script src="./js/ie10-viewport-bug-workaround.js"></script>
-
|