I have a simple Vaadin Web App and I am looking for a simple graphing API that will only have to handle a minimal amount of data(at most several hundred data points) and will allow me to display simple 2d graphs in a Vaadin panel object.
I need it to be a Java API and not a external service like Google charts because of security reasons.
Does anyone have any good recommendations?
EDIT: I choose to go with Invient Charts(Vaadin Add-on Wrapper for HighCharts) because I already have a HighCharts license. If I did not have a license I would probably have gone with a simple GWT based API such as gchart
EDIT 3/29/2012: Rolled out a production build of a Vaadin App utilizing Invient Charts. Very happy with the end results. You can control almost every aspect of High Charts functionality with pure Java code. A couple things are a little “hacky” like formatting how points are displayed and mouse-overs on data points where you need to pass in anonymous javascript functions as Strings. Initial setup is a bit dicey too; I had to override my ApplicationServlet to ensure the javascript libs were imported correctly and getting them in the right location in your project structure isn’t thoroughly documented. Overall though it was relatively painless getting graphs integrated into my Vaadin App. Strongly recommend.
And if JFreeChart doesn’t do the trick, try Invient Charts. It uses Highcharts JavaScript library, which requires a license for commercial use. It looks stunning and it’s pretty easy to use for creating charts.