The web is accessible to more audience than any other medium in our current time. That makes the web a good medium to push different kinds of information. We have succeeded so far in many aspect of using the web as a communication tool using textual communication (web content), image communication etc. The one aspect of the web we have fail and still continue to fail is data visualization. The ability to show data in pie graphs, bar graphs etc. If you are in the same situation as I am, you find yourself in an abyss in which all solution have major disadvantages. Lets take a look at some of these solutions:
Using Adobe flash for charting on the web ensures that the chart looks the same on all machine. The developer doesn’t have to worry about how the different browsers will translate fonts and all that jazz. The visual aspect is preserved but to the disadvantage of the user. They have to have the flash runtime installed on their machine. Flash is currently present on about 90% of machines so this might be a decision we can live with (unless majority of your customer base fall in the remaining 10%, then you have to look for another alternative). adobes flex charting controls is a great examples of great flash/flex charting controls.
You fate is the same as in flash except that you are even worse of now because Silverlight is new and isn’t present on majority of machines out there. MS is trying hard to spread the Silverlight runtime but who know when it will be available on majority of the machines out there. Examples of some charting libraries based on Silverlight are Freesilverlightchart and
Ajax Component / DHTML
2. With all the effort placed on standardization, most of the dominating browsers do not process pages the same way. Monzilla Firfox users blame MS IE for not complying with standards and visa-versa. Thus, you have to test your Ajax control/component in most, if not all browsers out there to make sure its “works”.
3. Even if you have it working just right in all browsers, an update on a browser as to how its engines work could affect your control.
Canvas from HTML 5
The HTML canvas is becoming more and more popular for drawing charts but still in its infancy. Its not supported by IE even though there is a workaround to make it work in IE. It also doesn’t have the robustness to support the many different charting needs such as events on chart elements and chart element composition. That said, if you are building serious charting controls, this is definitely not for you.
All in all, there is not one solution that solved all the problems. They each have their disadvantages as well as advantages. Your choice purely depends on your target audience, their browser medium and what your business is willing to live with.