-
Get a monthly update on best practices for delivering successful software.
After a long time of searching for the right data visualization framework for Flash Platform, some time ago I've put my money on Flare which is based on a Java framework called Prefuse. I have been very happy with it and haven't looked back until a new framework of same purpose crossed my way - Axiis.
Before anything else said, Axiis is a brand new framework so I have to give it some credit if all the bells and whistles are not there. What intrigued me about it in the first place is that Axiis is heavily relying on Degrafa, a well proven declarative graphics framework that I have a lot of good experience with.
After looking at Axiis examples, here are my first impressions of how it stands against Flare.
Firstly, they are both open source. Needless to say, this goes a long way.
Axiis, unlike Flare, is solely Flex based because of its reliance on Degrafa. Not that I'm crazy about doing data visualization projects in Flash, but it is a good feeling to have options.
Axiis code looks better structured and organized - at a first glance. While it is a little bit tricky to organize Flare code, I have made it a standard to use it in conjuction with PureMVC, (my favorite MVC framework) and that setup makes it much easier to deal with Flare code. Code in Flare examples looked scary at best when I saw it the first time. Axiis code in the examples they provided is mostly neat MXML, but there is only so much of MXML per component that I'm willing to look at. My guess is that combining it with an MVC framework and AS3 would be a nice thing for me to try and see how that workflow looks like.
Flare was not quick to jump into in my experience, but well worth the trouble. Jumping into Axiis with previous knowledge of Degrafa took a really short time. Although there is example code for Flare, I didn't learn a lot from it because of the very different coding style from what I generally do. I learned most about it from forums, fidgeting with classes and somewhat reading through the source code. Axiis example code is clear as day and a ready source for your first Axiis project.
What rocked my world about Flare to begin with were the layout transitions and how well they performed with larger data sets. I haven't seen that in Axiis examples. I'm not sure if I should care about transitions that much but I think that it is not to ignore when it comes to interactive data visualizations. Performance testing is the first thing I'm going to pay attention to when it comes to Axiis.
So at the end I will do a prototype in Axiis to see how is it to work with and how well it performs. It definitely seems very promising but I'm not going to drop Flare anytime soon.
What will be hard to top about Flare is that I keep finding new ways to do things with it and new wonderful expressions made possible with its endless flexibility.
Related posts:
Topics: axiis, data visualization, Flare, Flex, Flex, Flash and Air
Sasha, I think that is a great high level summary and comparison. As one of the co-founders of Axiis, I can tell you we used Flare for some inspiration. And their transitions are amazing. Transitions, animation, and performance are three main things we are focused on for our beta release. I am also part of the Degrafa team, and we are working on revving the core Degrafa engine specifically to support some of these features. Right now I fear you will find the performance in Axiis to be rather modest. One big differentiator between Flare and Axiis is that Axiis allows you to describe complex layout algorithms in markup in a more concise, and I like to think, intuitive manner.
Another big difference is that Axiis was developed by two of us over the period of about 4 months, versus Flare which is much more mature and was ported from Java. So I am hoping people can adjust expectations accordingly. Axiis is just a baby, but we hope it will grow into something that data viz community will value and contribute towards.
Can’t wait to see what you come up with and get your feedback (good and bad) on your experience.
Comment by Tom Gonzalez, Thursday, May 28, 2009 @ 3:54 pm
Nice review!
This might finally be something to keep in mind when doing visualisations of Neo4j graphs in AJAX. Are there good means to interact with a REST API for pulling datasets and fill the graphs as you traverse it?
Cheers
/peter
Comment by Peter Neubauer, Friday, May 29, 2009 @ 2:45 am
[...] Dzeletovic, a person who has worked with Flare, has done a very nice post comparing the two, “Flare vs. Axiis.” Both Tom Gonzalez, one of the co-founders of Axiis, and Sasha seem to agree that one big [...]
Pingback by System Advancements at the Monastery » Blog Archive » Setting Up Prefuse Flare, Sunday, May 31, 2009 @ 1:59 pm
Great write up Sasha.
I think Axiis does have some things missing compared to Flare, but in it’s alpha state I’m really excited to see where it goes. Optimization and transitions are definitely things I’m looking for, but the collaboration that’s going on between Degrafa and this project with help get there quicker.
In regards to transitions, there is work being done on the Degrafa side that will definitely help with that. I did a blog post on the Degrafa site a little while back pointing out some of this work: http://www.degrafa.org/blog/2009/06/say-hello-to-supershape2d/ .
Juan
Comment by Juan Sanchez, Monday, July 13, 2009 @ 6:52 am
Yes, but how heavy is Axiis? Have you pushed the limits? I used Ravis Birdeye for our initial efforts for my network mapping app http://www.flairjax.com/?p=72, but the mxml components are way to heavy. Had to go to flare.
Comment by jason, Monday, July 13, 2009 @ 10:49 am