Support for a chart choice & JQchart maximum visualization optimization - charts

I have a big project that requires charting and I need to make a decision between these two charting choices:
JQchart - Looks most dynamic and easy to use with MVC support, The problem is that it looks inferior to Highcharts in data visualization.
Highcharts - The DotNet support is depndable on a 3rd part api library, It might not be as dynamic as JQcharts but it looks significantly better than it.
I need some guidance if it's possible to add some "magic" to the JQchart lib to look better(I know Trirand plugin it's not enough), Any examples with optimized visualization will be wellcome, Any suggestions for some other plugins are welcome as well.

Related

Online graphing and data visualization frameworks

I have been looking around at web applications and websites with rich graphs, charts, and data visualization and for the most part have been able to determine which frameworks or tools websites are using. However I was looking over 'resumup.com' and couldn't determine what they are using. Does anyone know off hand or can you tell? It doesn't seem like any javascript framework i've seen unless its custom...is it some sort of flash or flex framework? Any help would be greatly appreciated.
Thanks,
Marques
I apologize in advance for not being able to hyperlink everything. StackOverflow is placing a limit on the number of link I can put here. Had to shrink 9 links down to 2.
I'm not too familiar with ResumUP, so I can't speak directly to that. Though, since it is on Facebook, my guess is that it is almost certainly uses homebrewed, javascript-based visualization code.
Speaking more broadly to the web as a whole, and to the first part of your post, D3 is becoming the most popular option for web-based visualizations (particularly those that are interactive). An example of D3 that you've might have seen is The New York Times' 2013 budget visualization (and most other interactive visualizations on the NYT, for that matter). However D3 is capable of more than just making visualizations. Compare The New York Times example to Visual.ly's Inequality In America site, which is also made using D3.
For more basic visualizations like bar charts, many companies offer APIs for creating visualizations, like Google's Chart Tools. And even more don't use any toolkit. Take for instance the popular wind visualization tool by Fernanda Viegas & Martin Wattenberg. This website showing visualizations for the civil war only depends on jQuery for javascript code (and on the Google Maps API).
Other frameworks include, but are not limited to, Protovis (I'd use D3 instead), processing.js, and countless others.
I'm not sure if you have any plans on making web-based visualization tools, but if you do, I'd highly recommend using D3. There's a bit of a learning curve, but it gets you thinking about visualizations in terms of data, which can only help improve the quality of what you end up making. As an added benefit, D3 is one of the better toolkits in terms of how it treats the creation of visualizations. How you create and combine visual primitives in D3 is fairly natural. Not perfect, but definitely better than most alternatives.
Finally, on top of visualizations, the internet is abound with infographics (see Visual.ly's blog for examples). While these can theoretically be made with frameworks like D3, they are more likely than not made with Adobe Illustrator, saved as images, and then uploaded.

Best suite for GWT widgets

I am looking to build a GWT based web application. Being new to GWT, am looking for suites that provide the best GWT widgets (in terms of user experience, variety, styles, etc.), to help build a web app.
I have come across SmartGWT, but looking for other options/suggestions.
Thanks in advance!
I've done apps in both GWT and SmartGWT. My observations, for what it's worth:
SmartGWT has all sorts of cool features, out of the box. It's easy to be seduced by the SmartGWT showcase.
GWT is converging on SmartGWT, and quickly. For instance, the new DataGrid
can stand up against the SmartGWT ListGrid and come away looking good.
In order for GWT to look good though, there has to be real skill in the
developer. SmartGWT can make anyone look good, it seems, but to make
GWT shine takes skill.
Once you have that level of skill, though, there's no looking back.
GWT seems to me to be much more flexible, a consequence of the building-block approach. SmartGWT is more monolithic.
SmartGWT's design has some portability issues. I successfully took a pure GWT app I made and re-worked it (minimal effort) to run nicely in a BlackBerry PlayBook browser. I took a
SmartGWT app I had made at about the same time, and half the widgets
didn't work.
For an enterprise level solution I'm working on, I'm using pure GWT and I don't regret having made that choice.
I would suggest using standard gwt widgets. Simply because,
1)they are best documented,
2)they are highly customizable via css
3)from what I observe they provide the best performance
4)you dont need to learn a whole new framework built on top of another framework
but if you insist on using a framework then I suggest you take a look at this question
My advice to you is to consider your needs. Plain GWT and SmartGWT both are the best supported, so you need not look for more (unless of course both fail in what you want).
Go to their respective showcases and see what they offer and how it fits your requirements.
If gwt satisfies all your UI requirements, my advice is to choose it over SmartGWT. gwt beats SmartGWT in learning curve and documentation anytime. Also its faster(my opinion). If gwt doesn't satisfy your needs and SmartGWT does, then you should consider making the switch.
I have a year experience in smartGWT, when we started our first gwt lessons, they said use the basic gwt features and build own framework otherwise we can encounter errors which may lead to dead-ends. We considered the idea, but for the project (since we already had deadline) decided to look after some extension of gwt. We found smartGWT. The showcase was really convincing. Remember these are widgets, the basic logic of your system is still up to you.
In case if you start using smartGWT: If you don't use JSON but some normal list of java structures prepare to get hard hours/days to get use to datasources, grids, and few other components. Seriously, it had ridiculous problems (for example switching two configuration code line without reason makes work the listgrid), BUT before you drop the entire idea to use it, after a while it starts to work, and it becomes really impressive and comfortable. This is a kind of work "make it once, will work hundreds of times".
In my opinion:
don't start use smartGWT if you want to make a system which is not too complicated.
start use it if you need complicated system with lot of different features, if you don't have the time to develop everything for yourself: many components are ready in smartGWT.

BPMB visualization

We need to visualize BP (business process) into BPMN, but NOT by hands using modeler. We need to do it automatically in crm-web-based system written on PHP. I have input data (etc. array, xml, not care...(but not BPEL)), then I need to process it into nice BPMN graph (using SVG).
We have first nice-looking realization of it. We use matrix to draw: several times goes through matrix and optimize graph each time, no no, it working fast, but it not agile, hard to rebuilt, upgrade, add new features... We made this algorithm by ourselves (I mean we didn't find it in google or books). Problem is that we couldn't find any algorithms in the internet. I suppose we don't know correct keywords to do it. Every try returned us to BPEL vis. from BPMN, "Data flow vis." returned modelers...
Please help us to find some algorithms, or give correct keywords to find out information.
Think you're probably looking for "graph layout algorithms". The only library I'm aware of that can (I think) generate BPMN directly is the yFiles library from yWorks. It's not free. They do however offer a free application using the library that does auto-layout. Perhaps you could do some prototyping with that.
If that's not applicable, there are several other options. I'm not aware any of these can generate BPMN symbols directly; you'd have to construct the symbols. However all will auto-layout graphs according to various algorithms. Also all open source/free.
graphviz. Written in C. Quite old now but well used, stable and scalable.
tulip. Newer than graphviz. Haven't used it but heard good things about flexibility and scalability.
see also this post for javascript based options.
There are many more, just google for graph layout algorithms / libraries.
hth.

Java Web Framework Prototyping tools

At the moment Iam evaluating java web frameworks. More precisely Iam talking about GWT, JSF2 and apache wicket. One very importent criteria in this evaluation is prototyping.
The prototyping process in my company can be described by the folloing:
The customer can produce GUIs with an easy to use WYSIWYG editor, by drag&drop-ing web components on the corporate predefined website structur. There is also a need for some litte dynamic being like navigation from one frame to another.
So Iam looking for tools. These tools should not only provide nice GUIs but also deliver
some basic code, which can be forwarded to the development. The aim is to avoid missunderstandings between designers and developers as much as possible. More or less the
developers just have to implements the code, but not to implement the optical requirements.
In addition it would be desirable to customize the components thats been used in the WYSIWYG editor. Does anyone know any good tools for the mentioned frameworks (GWT, JSF2, wicket)?
One of the challenges with WYSIWYG tools for UI is that you generally have to pick between rapid prototyping and maintainable code. Even then, as soon as you want to do something that's not supported by the prototyping tool, you can implement it as you would without the prototyping tool, but your round-trip functionality (namely turning your app back into something that can be edited) is broken or crippled unless extra work is done to generate the metadata that the editor needs.
Upgrading between major releases is another issue. Vendors and groups who have developed these tools have a historically spotty record of when they stop supporting older versions, reasonably because of limited resources and sometimes difficult problems with how to track solid innovation happening in the framework itself.
My suggestion instead is to prototype with an RIA prototyping tool like Balsamiq Mockups or use a grid system like 960 Grid to generate rapid prototypes, then use a web development framework that allows your developers to run the code with or without the backend server. Wicket has a tag called that is great for this kind of thing -- web devs can fill a div with stuff that a component should generate, and Wicket devs can wrap the contents of that tag with after they implement it. Both parties can coexist for a long time that way.
Try GWT Designer for GWT.
Introduction
Quick Start Guide
Download
There's nothing like this for Wicket that I know of. The closest you would get to any kind of resource reuse from your customer would be to give them a drag and drop HTML editor - the resulting HTML could then form the basis of Wicket page/panel layout.
if you are planing to use a javascript library, you may use extjs,
http://www.sencha.com/products/js/
they have developed a nice designer
www.sencha.com/products/designer/
there is also a port of ext in GWT
www.sencha.com/products/gwt/
You have to pay for a commercial license if your application isn't open source!

Best programming languages to create technical charts for stocks on the server side

What programming languages are best suited to create technical charts for stocks on the server side and then stream out to http and see it on the browser.
Thanks
Vishal
It is hard to say what is "best".
This is something that Python can do well since it has add-on libraries for complex mathematical data manipulation such as NumPy and for quantitative finance such as Quantlib. Matplotlib is a very flexible Python charting library.
In addition, there is an IronPython-based spreadsheet called Resolver One that is popular in the financial services industry and they have an add-on that turns any spreadsheet into a web application.
If you did decide to use Resolver, you should be able to use almost any Python or .NET library and integrate it with your application.
I would suggest that you take a look at SVG as the graphical format for the technical charts because you can zoom into these charts in the web browser.
Any language with a graphical library will do. I know of implementations in Perl, C++, and Java
The perfect language for you would be Scala, here's why. You can write your serverside program using Scala, and you can then use the Scala.js framework to display the output(The Chart) to the browser(Client Side). The output will then be handled using Javascript.
Many websites currently use this method, for example, Twitter and Facebook.