Yesterday, we released the beta version of our Adobe Flex Charting Component – FusionCharts for Flex.
So what is it exactly?
FusionCharts for Flex is essentially a Flex component that enables you to load and manipulate FusionCharts SWF files in your Flex 2 and Flex 3 projects. It provides an API that helps you create and manipulate the charts from your Flex code i.e., initialize the chart from Flex using MXML, change chart types, provide data from Flex data structures, handle events etc. It currently features over 40 chart types including both 2D and 3D charts.
How does it work?
FusionCharts v3 charts are coded in ActionScript 2 (Flash 8). As such, if you’re wondering how we’ve converted them into Flex components, let me tell you that we’ve not yet ported them to ActionScript 3. Instead, we’ve modified the existing FusionCharts v3 charts so that they can be efficiently loaded in your Flex solutions and can then be controlled from your Flex code. For cross communication between AVM1 and AVM2, we’ve used FlashInterface (big thanks to those guys).
There were a number of cross AVM (ActionScript Virtual Machine) issues that we had to face. For example, co-ordinate system sporadically went haywire, masking didn’t work as intended, hitTest missed the hits and so on. After weeks of hacking, we finally managed to make our AS2 SWF files compatible with AVM2. It was a long war between our developers and cross AVM issues, but we finally emerged victorious. As such, you do not need to bother anything about cross AVM issues. All you need to do is load the FusionCharts SWF, provide data and control it from your Flex project.
Additionally, since FusionCharts internally uses XML as its only data source, we’ve provided Flex APIs to help you convert your data stored in Array, XML List, Model etc. to FusionCharts XML format. As such, you would not have to worry about hand-coding any of the XML.
So is this the end of Adobe Flex Charting and dawn of a new Flex charting era?
Well… err… no… not really! We’re a bunch of peaceful guys who believe in peace and harmony and not destruction.
On a serious note – no. We recommend using both the products in conjunction to cover all your charting needs. Both products have their niche and FusionCharts covers some of the aspects not fully covered by Flex charting. Basically, if you’re looking for more chart types and chart configuration options, we might be able to fit in. Also, some charts in FusionCharts suite are highly interactive like the pie and doughnut charts which allow you to slice out individual pie, rotate the chart, seamlessly transform from 3D to 2D etc.
In short, you might want to use FusionCharts for Flex if:
- You want to load charts as and when you need, instead of packing everything in your main SWF thereby increasing the file size.
- You want lots of chart types. Initially we’ve released just 40 chart types. But down the line, we do plan to include gauges and maps from our FusionWidgets and FusionMaps.
- You need lots of configuration options for each chart.
And, you wouldn’t want to use FusionCharts for Flex if:
- You want the charts as native Flex components, so that you can update individual columns/lines etc. You can, however, change the data of entire chart in FusionCharts for Flex.
- You want the charts to be coded in ActionScript 3 and not ActionScript 2, if that matters.
How much does it cost?
Currently, it’s in beta and is free to use (yes – you can even use it on your production websites, but no guarantees about anything there). The actual pricing will be announced later during the actual release. But, one thing is for sure – you wouldn’t have to sell your house to use this.
We eagerly await your feedback, suggestions, complaints, bug reports – whatever it is, just let it flow.