Package org.jCharts.axisChart
Class AxisChart
java.lang.Object
org.jCharts.Chart
org.jCharts.axisChart.AxisChart
- All Implemented Interfaces:
Serializable,HTMLChartTestable
- Direct Known Subclasses:
ScatterPlotAxisChart
This Class is used to create all axis chart types. This class knows how to render charts based on
the ChartType specified in on the iAxisChartDataSet.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AxisPropertiesprivate IAxisDataSeriesprotected XAxisprotected YAxis -
Constructor Summary
ConstructorsConstructorDescriptionAxisChart(IAxisDataSeries iAxisDataSeries, ChartProperties chartProperties, AxisProperties axisProperties, LegendProperties legendProperties, int pixelWidth, int pixelHeight) Constructor -
Method Summary
Modifier and TypeMethodDescriptionprivate booleanWe only allow horizontal plots for the Bar Chart types in this release.ScatterPlots create a subclass of AxisChartDataProcessor so we need this method so we can overload it.protected voidgetXAxis()getYAxis()protected voidDraws the charts over the axis.protected voidImplement the method to render the Axis based chartprotected voidsetupAxis(AxisChartDataProcessor axisChartDataProcessor, FontRenderContext fontRenderContext) protected NumericTagGroupsetupDataAxisProperties(Axis axis, DataAxisProperties dataAxisProperties, AxisChartDataProcessor axisChartDataProcessor, FontRenderContext fontRenderContext) Once we determine which axis is the data axis, the logic to set it up is the same whether it is a horizontal or vertical plot.private voidsizeAndPositionAxis(float xAxisWidth, float yAxisHeight, float chartTitleHeight) Finalizes the size of both Axis and sets the origin positionvoidtoHTML(HTMLGenerator htmlGenerator, String imageFileName, ImageMap imageMap) Enables the testing routines to display the contents of this Object.private voidCurrently, we only support the bar chart types being horizontal, and you can not have a horizontally plotted bar chart in a combo chart.Methods inherited from class org.jCharts.Chart
getBufferedImage, getChartProperties, getGenerateImageMapFlag, getGraphics2D, getImageHeight, getImageMap, getImageWidth, getLegend, hasLegend, render, renderChartTitle, renderWithImageMap, setGraphics2D, setImageMap
-
Field Details
-
xAxis
-
yAxis
-
axisProperties
-
iAxisDataSeries
-
-
Constructor Details
-
AxisChart
public AxisChart(IAxisDataSeries iAxisDataSeries, ChartProperties chartProperties, AxisProperties axisProperties, LegendProperties legendProperties, int pixelWidth, int pixelHeight) Constructor- Parameters:
iAxisDataSeries-chartProperties-axisProperties-legendProperties- if no legend is desired, pass NULLpixelWidth-pixelHeight-
-
-
Method Details
-
getIAxisDataSeries
- Returns:
- IAxisDataSeries
-
createAxisChartDataProcessor
ScatterPlots create a subclass of AxisChartDataProcessor so we need this method so we can overload it.- Returns:
- AxisChartDataProcessor
-
setupDataAxisProperties
protected NumericTagGroup setupDataAxisProperties(Axis axis, DataAxisProperties dataAxisProperties, AxisChartDataProcessor axisChartDataProcessor, FontRenderContext fontRenderContext) Once we determine which axis is the data axis, the logic to set it up is the same whether it is a horizontal or vertical plot.- Parameters:
dataAxisProperties-axisChartDataProcessor-fontRenderContext-- Returns:
- NumericTagGroup need to set this on the right axis
-
setupAxis
protected void setupAxis(AxisChartDataProcessor axisChartDataProcessor, FontRenderContext fontRenderContext) throws ChartDataException - Parameters:
axisChartDataProcessor-fontRenderContext-- Throws:
ChartDataException
-
sizeAndPositionAxis
private void sizeAndPositionAxis(float xAxisWidth, float yAxisHeight, float chartTitleHeight) Finalizes the size of both Axis and sets the origin position- Parameters:
xAxisWidth-yAxisHeight-chartTitleHeight-
-
deriveAxisValues
protected void deriveAxisValues() -
renderChart
Implement the method to render the Axis based chart- Specified by:
renderChartin classChart- Throws:
ChartDataExceptionPropertyException- there are several validations done to aid in development of the charts.
-
overlayCharts
Draws the charts over the axis. We have to render in a specific order so combo charts get drawn correctly- Throws:
PropertyExceptionChartDataException
-
validateHorizontalPlot
Currently, we only support the bar chart types being horizontal, and you can not have a horizontally plotted bar chart in a combo chart.- Throws:
PropertyException
-
allowHorizontalPlot
private boolean allowHorizontalPlot()We only allow horizontal plots for the Bar Chart types in this release.- Returns:
- boolean
-
getAxisProperties
-
getXAxis
-
getYAxis
-
toHTML
Enables the testing routines to display the contents of this Object. Override Chart implementation as PieCharts use AreaProperties directly rather than a child.- Specified by:
toHTMLin interfaceHTMLChartTestable- Overrides:
toHTMLin classChart- Parameters:
htmlGenerator-imageFileName-imageMap- if this is NULL we are not creating image map data in html
-