1 48 49 package org.krysalis.jcharts.test; 50 51 52 import java.awt.BasicStroke ; 53 import java.awt.Color ; 54 import java.awt.Paint ; 55 56 import org.krysalis.jcharts.axisChart.AxisChart; 57 import org.krysalis.jcharts.chartData.AxisChartDataSet; 58 import org.krysalis.jcharts.chartData.ChartDataException; 59 import org.krysalis.jcharts.chartData.DataSeries; 60 import org.krysalis.jcharts.chartData.interfaces.IAxisDataSeries; 61 import org.krysalis.jcharts.properties.AxisProperties; 62 import org.krysalis.jcharts.properties.AxisTypeProperties; 63 import org.krysalis.jcharts.properties.BarChartProperties; 64 import org.krysalis.jcharts.properties.ChartProperties; 65 import org.krysalis.jcharts.properties.ChartTypeProperties; 66 import org.krysalis.jcharts.properties.DataAxisProperties; 67 import org.krysalis.jcharts.properties.LegendProperties; 68 import org.krysalis.jcharts.properties.PropertyException; 69 import org.krysalis.jcharts.properties.util.ChartStroke; 70 import org.krysalis.jcharts.types.ChartType; 71 72 73 78 public final class BarTestDriver extends AxisChartTestBase 79 { 80 boolean supportsImageMap() 81 { 82 return true; 83 } 84 85 86 90 static ChartTypeProperties getChartTypeProperties( int numberOfDataSets ) 91 { 92 BarChartProperties barChartProperties = new BarChartProperties(); 93 barChartProperties.setWidthPercentage( 1f ); 94 95 return barChartProperties; 96 } 97 98 99 103 DataSeries getDataSeries() throws ChartDataException 104 { 105 int dataSize = (int) TestDataGenerator.getRandomNumber( 2, 25 ); 106 int numberOfDataSets = 1; 108 109 AxisChartDataSet axisChartDataSet; 110 111 112 DataSeries dataSeries = super.createDataSeries( dataSize ); 113 114 axisChartDataSet = super.createAxisChartDataSet( ChartType.BAR, 115 getChartTypeProperties( numberOfDataSets ), 116 numberOfDataSets, 117 dataSize, 118 -200, 119 400 ); 120 121 dataSeries.addIAxisPlotDataSet( axisChartDataSet ); 122 123 return dataSeries; 124 } 125 126 127 133 public static void main( String [] args ) throws PropertyException, ChartDataException 134 { 135 BarChartProperties barChartProperties = new BarChartProperties(); 136 137 140 146 147 148 149 150 151 double[][] data = {{.40, .60, .04, .3 }}; 152 Paint [] paints = {Color.green}; 153 String [] legendLabels = {"Test Legend Label"}; 154 AxisChartDataSet axisChartDataSet = new AxisChartDataSet( data, legendLabels, paints, ChartType.BAR, barChartProperties ); 155 156 String [] axisLabels = {"1900", "2000", "2010", "2050" }; 157 IAxisDataSeries dataSeries = new DataSeries( axisLabels, "Wonka Bars", "Years", "Oompa Loompa Productivity" ); 159 dataSeries.addIAxisPlotDataSet( axisChartDataSet ); 160 161 162 ChartProperties chartProperties = new ChartProperties(); 163 AxisProperties axisProperties = new AxisProperties( false ); 164 165 axisProperties.getYAxisProperties().setShowGridLines( AxisTypeProperties.GRID_LINES_ALL ); 166 axisProperties.getYAxisProperties().setAxisStroke( new ChartStroke( new BasicStroke ( 1.5f ), Color.red ) ); 167 axisProperties.getYAxisProperties().setGridLineChartStroke( new ChartStroke( new BasicStroke ( 1.5f ), Color.red ) ); 168 169 171 172 DataAxisProperties yAxis = (DataAxisProperties) axisProperties.getYAxisProperties(); 173 yAxis.setNumItems( 10 ); 176 yAxis.setRoundToNearest( -3 ); 177 178 179 180 LegendProperties legendProperties = new LegendProperties(); 181 182 AxisChart axisChart = new AxisChart( dataSeries, chartProperties, axisProperties, legendProperties, 500, 400 ); 183 184 ChartTestDriver.exportImage( axisChart, "BarChartTest.png" ); 185 186 187 } 188 189 } 190 | Popular Tags |