Hi there!
I’m in the process of evaluation free charts libraries for my company’s internal project. The project is about plotting some variables from remote sensors in real-time (5 sec updates) and historical data sets. I just saw JFreeCharts demo’s programs and it looks the most promising so far.
I have just a few questions about its functionalities.
Does JFreeChart supports plotting eight simultaneous variables in the same graph?
Each one have a different meaning and will be measuring different quantities. Can I control their scale individually?
I need to have a dynamic vertical axis for each variable measured. Does this library support it? If not can hide it’s vertical axis and implement my own in a lateral panel?
I need to have a vertical ruler that moves by the horizontal X axis. In the points where it intersects with the 8 curves, I need to write their Y values in a panel. Does it supports this behavior or have methods that I could use that given xy mouse coordinates, give me the X and Y variables values?
Is there any PAN behavior implemented if the dataset is bigger than what is being visualized?
In most yours demos programs, the curves don’t go all the way until the vertical axis. Is it possible to do that?
Thanks in advance for the answer and keep the good work,
Eduardo
Feature Questions
Re: Feature Questions
Eduardo Ramalho wrote:
> I?m in the process of evaluation free charts libraries for my
> company?s internal project. The project is about plotting
> some variables from remote sensors in real-time (5 sec
> updates) and historical data sets. I just saw JFreeCharts
> demo?s programs and it looks the most promising so far.
> I have just a few questions about its functionalities.
>
> Does JFreeChart supports plotting eight simultaneous
> variables in the same graph?
> Each one have a different meaning and will be measuring
> different quantities. Can I control their scale individually?
If you include them all on one plot, then they must use the same scale. Alternatively you could use a combination plot and set the scale for each one individually. The combination plots are a fairly recent addition to JFreeChart, and there are still a few issues to sort out - you would need to try out your data to see if they will work for you. With eight sub plots, you might have trouble with the axis display. Hopefully this will improve in the future.
> I need to have a dynamic vertical axis for each variable
> measured. Does this library support it? If not can hide it?s
> vertical axis and implement my own in a lateral panel?
It depends what you mean by 'dynamic'. The axis will automatically recalculate its range to match the data, unless you specify a fixed range. If you write code to set the axis range from outside of the chart, then the chart will automatically update when you set the range.
> I need to have a vertical ruler that moves by the horizontal
> X axis. In the points where it intersects with the 8 curves,
> I need to write their Y values in a panel. Does it supports
> this behavior or have methods that I could use that given xy
> mouse coordinates, give me the X and Y variables values?
You can have vertical and horizontal crosshairs on the chart. There are ways to calculate the data values, but we're still working to make this easier to do.
> Is there any PAN behavior implemented if the dataset is
> bigger than what is being visualized?
No, not yet.
> In most yours demos programs, the curves don?t go all the way
> until the vertical axis. Is it possible to do that?
There is a setting in the axis for the margin at each end when the axis range is automatically calculated. This defaults to 5% at each end, which makes sense for bar charts etc. For some charts, you probably should set this to zero.
Regards,
DG.
> I?m in the process of evaluation free charts libraries for my
> company?s internal project. The project is about plotting
> some variables from remote sensors in real-time (5 sec
> updates) and historical data sets. I just saw JFreeCharts
> demo?s programs and it looks the most promising so far.
> I have just a few questions about its functionalities.
>
> Does JFreeChart supports plotting eight simultaneous
> variables in the same graph?
> Each one have a different meaning and will be measuring
> different quantities. Can I control their scale individually?
If you include them all on one plot, then they must use the same scale. Alternatively you could use a combination plot and set the scale for each one individually. The combination plots are a fairly recent addition to JFreeChart, and there are still a few issues to sort out - you would need to try out your data to see if they will work for you. With eight sub plots, you might have trouble with the axis display. Hopefully this will improve in the future.
> I need to have a dynamic vertical axis for each variable
> measured. Does this library support it? If not can hide it?s
> vertical axis and implement my own in a lateral panel?
It depends what you mean by 'dynamic'. The axis will automatically recalculate its range to match the data, unless you specify a fixed range. If you write code to set the axis range from outside of the chart, then the chart will automatically update when you set the range.
> I need to have a vertical ruler that moves by the horizontal
> X axis. In the points where it intersects with the 8 curves,
> I need to write their Y values in a panel. Does it supports
> this behavior or have methods that I could use that given xy
> mouse coordinates, give me the X and Y variables values?
You can have vertical and horizontal crosshairs on the chart. There are ways to calculate the data values, but we're still working to make this easier to do.
> Is there any PAN behavior implemented if the dataset is
> bigger than what is being visualized?
No, not yet.
> In most yours demos programs, the curves don?t go all the way
> until the vertical axis. Is it possible to do that?
There is a setting in the axis for the margin at each end when the axis range is automatically calculated. This defaults to 5% at each end, which makes sense for bar charts etc. For some charts, you probably should set this to zero.
Regards,
DG.