Martin Škurla, developer of the Neo4j connector in Gephi and former Google Summer of Code student in 2010, gave a complete talk about his plug-in at the last FOSDEM conference in the workshop on Graph Processing. His talk covers the installation and showcase of visualization capabilities of Neo4j graph database in Gephi, as long as the exploration of general useful features of Gephi applying them on imported Neo4j database. Watch the video below, and comment it to ask additional questions!
The Sunbelt Conference went extremely well, with great audience for Gephi and many positive feedbacks and comments. This event confirmed Gephi is fulfilling some of the essential needs and is going toward the good direction. Two of our plans are to improve features for longitudinal networks and develop the gephi-toolkit. Let’s see what we learnt from Sunbelt.
The Sunbelt Conference is a huge event, and this edition breaks all records with more than 700 participants and a very intensive program. Needless to say outstanding researches are presented there and it’s a pleasure to meet everyone, though we didn’t have enough time there in Riva Del Garda (Italy).
A great majority of people we provided a Gephi demo asked about dynamic network support. That is not really surprising but it shows the great demand about these features and the interest the timeline in Gephi and how to use it.
I was however frustrated we didn’t have the time to go deeper in the discussion. People are looking for specific layout, evolution and diffusion features. It is a vast topic and that’s why we are starting a draft specification about longitudinal networks. Our aim is to collect knowledge, references and feature requests from Sunbelt researchers interested in seeing progress in this direction. That will help for Gephi future versions 0.8 and 0.9.
And it is clear we need a tutorial how to format data to use dynamic features in current version.
Plug-ins, Toolkit, reuse and mashup
Gephi is a modular application extensible with plug-ins. We hope that the existing documentation is enough to already start to code cool stuff and are really eager to help anyone who has a plugin project. Meet us on the forum.
Gephi also relies on a dozen core modules that can be packaged independently. That is what we call the gephi-toolkit, which official announcement and tutorial are due soon. Many researchers are seduced by this idea, allowing custom scripting and command-line applications using Gephi features. Stay tuned.
Gephi is an international project, open to any institution or company anxious to see quick progress. We are looking for contributors and funding. Please contact us. Thanks to Google Summer of Code program, see what we can do in four months with great students.
This is a “madness” screencast overview of brand new Gephi 0.7. Turn on the sound, go on Vimeo to see it in HD, and enjoy!
The video highlights the following features:
|* grouping:||Group nodes into clusters and navigate in multi-level graphs.|
|* multi-level layout:||Very fast layout algorithm that coersen the graph to reduce computation.|
|* interaction:||Highlight neighbors and interact directly with the visualization when using tools.|
|* partitionning:||Use data attributes to colorize partitions and communities.|
|* ranking:||Use degree, metrics or data attributes to set nodes/edges’ color and size.|
|* metrics:||Run various algorithm in one click and get HTML report page.|
|* data laboratory:||Data table view with search feature.|
|* dynamics:||Use Timeline to explore dynamic graphs.|
|* filtering:||Dynamic queries, create and combine a large set of filters.|
|* auto update:||The application is updating itself it’s core and plugins.|
|* vectorial preview:||Switch to the preview tab to put the final touch before explorting in SVG or PDF.|
Creative Commons By-NC-SA
Feather Drug – Mysteries – Album Beta test V0.1
Last week for the great opening of the SciencesPo Medialab we have been invited to make a special demo of Gephi. Because the exploration of the web is a leading domain of interest for us and SciencesPo, and in addition a technological challenge, we decided to use Gephi to display live web graph.
The device was funny. Three Firefox-based Navicrawler were driven by three web-explorers, actually trying to map a controversy. When browsing, the Firefox extension was sending discovered URLs and links through the network to the server computer running Gephi. There, a tweaked Gephi datasource compiled the results, assigned colors and immediately display the graph.
A clip of the live results. You can see new nodes an links coming dynamically.
We are looking forward to continue these experiments and build a stronger architecture in our 0.7 version to facilitate datasource development.
This is our last video on Gephi 0.6 presenting 14 features of this serie. Completing the tutorials, you will find :
00:00 Real-time layout
02:00 Node details
02:45 Manipulation tool
05:10 Label adjust
05:30 Designing labels
06:45 Real-time design
07:45 Space partitionning
10:10 Using workspaces
12:10 Customizing the interface
13:10 SVG export
15:00 Viewing propagation
15:55 Live datasource
17:00 Timeline (experimental)
Watch it in HD on Vimeo!
Download AVI version (1280×720, 272MB)
It is now a couple of weeks I am working on the new 0.7 core. The plan is to rewrite completely the architecture using the Netbeans Platform Framework. In this article I will introduce a bit what I’m doing and the benefits it brings.
I used to claim the importance of software architecture. I have to admit, as I am rewriting completely a new architecture, I didn’t know a lot about architecture so far. I had to ask myself what was wrong. I found some very classical problems. Typically, the architecture was built for a specific set of features and adding features which was not planned at the beginning were very difficult to add. Nowadays I just think this is inescapable and software architecture has a lifecycle, like anything else.
Since, I’m converted to a (Service oriented) API Design and I try to think every day in this way. I’m helped by this excellent book: Practical API Design: Confessions of a Java Framework Architect.
The aim is to clearly divide the application in modules, in order they are extensible and can grow independently from each other. It also helps to avoid the spaghetti problem and therefore it fits for very large applications, like Netbeans IDE.
In addition, a modular application is much more appropriate for an open-source project, with several programmers involved. As a consequence, new programmers from GSoC will only work on the new 0.7 architecture.
The Netbeans Platform Framework is used by Netbeans developers to build their IDE. The framework is available for Swing programmers to build medium and large desktop applications. It encourages sustainable development practices and provide all the “plumbing” that, before, I developed myself.
One of the main benefits is that you don’t need to think how to build an application extensible by plug-ins because everything is plug-in!
For instance a controller class can obtain all implementations, in any module, of an Algorithm interface. In this way anyone can develop an algorithm class and include it in a plug-in. No additional code will be needed to include the algorithm in Gephi.
I will start a topic about modular design on the forum to start a discussion.
Gephi allows users to easily customize the visual style and the way nodes and edges appears. Filters bring the control of node size and color, and styles let us change background color, type of objects and edges. Labels are customizable in a fine way : users can select font, color, transparency, shadow and set their size according to the node the are related to. Furthermore, most of our implemented algorithms don’t use the Z axis, but some do, like Stairizer used in this demo.
This video presents advanced functionalities in 5 steps :
1. Spatializing a semantic graph on genetics take on a case study with the Stairizer algorithm
2. Changing the style of the background and the edges
3. Filtering the nodes (ordering by a node attribute) to improve lisibility
4. Tweaking labels rendering and positioning by a Label Adjust
5. Exploring the 3D graph