You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(95) |
Sep
(42) |
Oct
(2) |
Nov
(7) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
|
Feb
(34) |
Mar
|
Apr
|
May
(64) |
Jun
(113) |
Jul
(60) |
Aug
(9) |
Sep
(6) |
Oct
(20) |
Nov
(11) |
Dec
|
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 20:00:01
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/lineCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/lineCharts Modified Files: missingValues.png basicChart.png Log Message: Index: missingValues.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/lineCharts/missingValues.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsopRkEi and /tmp/cvsbe8RbM differ Index: basicChart.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/lineCharts/basicChart.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvs2zvOHn and /tmp/cvs9yFjhR differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 20:00:01
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/barCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/barCharts Modified Files: clusteredBarChart.png barChartWidths.png barChartOutlines.png stackedBarChart.png Log Message: Index: stackedBarChart.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/barCharts/stackedBarChart.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsJvDeu5 and /tmp/cvslo4r8x differ Index: barChartWidths.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/barCharts/barChartWidths.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsin5qN9 and /tmp/cvs7WdTuC differ Index: clusteredBarChart.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/barCharts/clusteredBarChart.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsdqY8So and /tmp/cvsvHBbKR differ Index: barChartOutlines.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/barCharts/barChartOutlines.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvs7xoDRs and /tmp/cvsu6Q6KV differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 20:00:01
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/pointCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/pointCharts Modified Files: shapes.png basicChart.png nullValues.png Log Message: Index: nullValues.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/pointCharts/nullValues.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsml09Tz and /tmp/cvsdcUfS2 differ Index: shapes.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/pointCharts/shapes.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsPhppXF and /tmp/cvsWINyY8 differ Index: basicChart.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/pointCharts/basicChart.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsTiwDgL and /tmp/cvstN9Dke differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 19:59:59
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/stock In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/stock Modified Files: basicChart.png strokes.png pixelLengths.png Log Message: Index: pixelLengths.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/stock/pixelLengths.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsaqxmVr and /tmp/cvsrcrw3T differ Index: strokes.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/stock/strokes.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsQfIVPx and /tmp/cvsAGju0Z differ Index: basicChart.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/stock/basicChart.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsvwEIkD and /tmp/cvssJFpz5 differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 19:59:58
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/allCharts Modified Files: chartTitleWrapping.png chartBorder.png chartNoTitle.png chartTitle.png edgePadding.png backgroundPaint.png Log Message: Index: chartNoTitle.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts/chartNoTitle.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvs7puEy0 and /tmp/cvsxAUWos differ Index: chartTitle.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts/chartTitle.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsgMorQ5 and /tmp/cvsRnFLIx differ Index: chartTitleWrapping.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts/chartTitleWrapping.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsdWvHM9 and /tmp/cvs5As3IB differ Index: edgePadding.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts/edgePadding.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsEAhfSd and /tmp/cvsYR4nRF differ Index: backgroundPaint.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts/backgroundPaint.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsMTaCvj and /tmp/cvsHg9jyL differ Index: chartBorder.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/allCharts/chartBorder.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsUb5yBo and /tmp/cvsUckmGQ differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 19:59:56
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/samples/area In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/samples/area Modified Files: stackedAreaChart.png areaChartVertical.png Log Message: Index: areaChartVertical.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/samples/area/areaChartVertical.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsK4BMQD and /tmp/cvsfrkEQ3 differ Index: stackedAreaChart.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/samples/area/stackedAreaChart.png,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvs3EJYmG and /tmp/cvsmpggt6 differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 19:59:49
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/axisCharts Modified Files: tickColors.png axisBackground.png zeroLinePaintStroke.png tickStroke.png dollarSigns.png noTicks.png numberOfItemsOnYAxis.png scaleFont.png noZeroLine.png axisRounding.png commas.png userDefinedScale.png verticalXAxisLabels.png ticksWithLabels.png Log Message: Index: verticalXAxisLabels.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/verticalXAxisLabels.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsP4nnsn and /tmp/cvsaSaTHC differ Index: dollarSigns.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/dollarSigns.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsCCwFCm and /tmp/cvsJ47lCC differ Index: tickStroke.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/tickStroke.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsATkegi and /tmp/cvsJd3LXy differ Index: noTicks.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/noTicks.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsXfglK0 and /tmp/cvstOIi3h differ Index: userDefinedScale.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/userDefinedScale.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvs4ZbfHc and /tmp/cvsjvgo7t differ Index: tickColors.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/tickColors.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvs8Sg7bm and /tmp/cvsaU4AID differ Index: ticksWithLabels.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/ticksWithLabels.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsSp1eqr and /tmp/cvsTG51ZI differ Index: commas.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/commas.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsAWMy7z and /tmp/cvsax0fTR differ Index: zeroLinePaintStroke.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/zeroLinePaintStroke.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvs8QtgDU and /tmp/cvsBdppCc differ Index: axisRounding.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/axisRounding.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsOcKoTy and /tmp/cvsm00tnR differ Index: scaleFont.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/scaleFont.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsI0n3qV and /tmp/cvsZy7Xbe differ Index: numberOfItemsOnYAxis.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/numberOfItemsOnYAxis.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvs8MVErJ and /tmp/cvs5rjsP2 differ Index: noZeroLine.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/noZeroLine.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsoFYLxI and /tmp/cvsvB0rF2 differ Index: axisBackground.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/axisCharts/axisBackground.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsMTLoDz and /tmp/cvsIvvqjU differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 19:59:45
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/comboCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/comboCharts Modified Files: stackedArea.png Log Message: Index: stackedArea.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/comboCharts/stackedArea.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvsBS3KZW and /tmp/cvsDfolKc differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-18 19:59:42
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/areaCharts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14441/src/documentation/resources/images/userGuide/areaCharts Modified Files: stackedArea.png Log Message: Index: stackedArea.png =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/documentation/resources/images/userGuide/areaCharts/stackedArea.png,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 Binary files /tmp/cvscHgRSx and /tmp/cvsqs614E differ |
From: Nathaniel G. A. <nat...@us...> - 2004-07-03 20:39:10
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/demo/simpleservlet In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13510/src/java/org/krysalis/jcharts/demo/simpleservlet Modified Files: DualYAxis.java Log Message: commented code out so will compile Index: DualYAxis.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/demo/simpleservlet/DualYAxis.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** DualYAxis.java 28 Aug 2003 01:18:02 -0000 1.2 --- DualYAxis.java 3 Jul 2004 20:39:01 -0000 1.3 *************** *** 1,277 **** ! ! /*********************************************************************************************** ! * File Info: $Id$ ! * Copyright (C) 2002 ! * Author: Nathaniel G. Auvil ! * Contributor(s): ! * ! * Copyright 2002 (C) Nathaniel G. Auvil. All Rights Reserved. ! * ! * Redistribution and use of this software and associated documentation ("Software"), with or ! * without modification, are permitted provided that the following conditions are met: ! * ! * 1. Redistributions of source code must retain copyright statements and notices. ! * Redistributions must also contain a copy of this document. ! * ! * 2. Redistributions in binary form must reproduce the above copyright notice, this list of ! * conditions and the following disclaimer in the documentation and/or other materials ! * provided with the distribution. ! * ! * 3. The name "jCharts" or "Nathaniel G. Auvil" must not be used to endorse or promote ! * products derived from this Software without prior written permission of Nathaniel G. ! * Auvil. For written permission, please contact nat...@us... ! * ! * 4. Products derived from this Software may not be called "jCharts" nor may "jCharts" appear ! * in their names without prior written permission of Nathaniel G. Auvil. jCharts is a ! * registered trademark of Nathaniel G. Auvil. ! * ! * 5. Due credit should be given to the jCharts Project (http://jcharts.sourceforge.net/). ! * ! * THIS SOFTWARE IS PROVIDED BY Nathaniel G. Auvil AND CONTRIBUTORS ``AS IS'' AND ANY ! * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ! * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ! * jCharts OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ! * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF ! * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ! * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,STRICT LIABILITY, OR TORT ! * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN ! * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE ! ************************************************************************************************/ ! ! package org.krysalis.jcharts.demo.simpleservlet; ! ! ! import org.krysalis.jcharts.axisChart.AxisChart; ! import org.krysalis.jcharts.chartData.AxisChartDataSet; ! import org.krysalis.jcharts.chartData.DataSeries; ! import org.krysalis.jcharts.chartData.interfaces.IAxisDataSeries; ! import org.krysalis.jcharts.encoders.ServletEncoderHelper; ! import org.krysalis.jcharts.properties.AxisProperties; ! import org.krysalis.jcharts.properties.ChartProperties; ! import org.krysalis.jcharts.properties.ClusteredBarChartProperties; ! import org.krysalis.jcharts.properties.DataAxisProperties; ! import org.krysalis.jcharts.properties.LegendProperties; ! import org.krysalis.jcharts.properties.LineChartProperties; ! import org.krysalis.jcharts.properties.PointChartProperties; ! import org.krysalis.jcharts.properties.util.ChartFont; ! import org.krysalis.jcharts.types.ChartType; ! ! import javax.servlet.ServletException; ! import javax.servlet.http.HttpServletRequest; ! import javax.servlet.http.HttpServletResponse; ! import java.awt.*; ! import java.io.IOException; ! ! // Dual Y axis changes courtesy of St�phane NGUYEN integrated by CMC 25Aug03 ! // French translation courtesy of my good wife Jacki ... ! public class DualYAxis extends ChartServlet { ! ! ! //---all of the charts will have some properties. ! private LineChartProperties lineChartProperties; ! private ClusteredBarChartProperties clusteredBarChartProperties; ! ! protected LegendProperties legendProperties; ! protected ChartProperties chartProperties; ! protected AxisProperties axisProperties; ! ! //---all of the charts have the same size ! protected int width = 750; ! protected int height = 430; ! ! ! public void init() { ! ! ! //---------------------Font & Police---------------------------------------- ! ! legendProperties = new LegendProperties(); ! chartProperties = new ChartProperties(); ! axisProperties = new AxisProperties(false); ! ! ChartFont axisScaleFont = new ChartFont(new Font("Arial Narrow", Font.PLAIN, 10), Color.black); ! axisProperties.getXAxisProperties().setScaleChartFont(axisScaleFont); ! axisProperties.getYAxisProperties().setScaleChartFont(axisScaleFont); ! ! ChartFont axisTitleFont = new ChartFont(new Font("Arial Narrow", Font.PLAIN, 13), Color.black); ! axisProperties.getXAxisProperties().setTitleChartFont(axisTitleFont); ! axisProperties.getYAxisProperties().setTitleChartFont(axisTitleFont); ! ! ChartFont titleFont = new ChartFont(new Font("Georgia Negreta cursiva", Font.PLAIN, 15), Color.black); ! chartProperties.setTitleFont(titleFont); ! ! //On fixe la marge avec le cadre ! // Set the margin within the frame ! chartProperties.setEdgePadding(2f); ! ! //On met le graphe sur un fond gris clair ! // Set the chart against a plain grey background ! axisProperties.setBackgroundPaint(new Color (245, 245, 245)); ! ! //Param�trage de la bo�te de l�gende ! //Parameters for the legend box ! //legendProperties.setPlacement(LegendAreaProperties.RIGHT); ! //legendProperties.setNumColumns(1); ! //legendProperties.setFont( new Font("Arial Narrow", Font.PLAIN, 13) ); ! //legendProperties.setFontPaint(Color.black); ! ChartFont legendFont = new ChartFont(new Font("Arial Narrow", Font.PLAIN, 13), Color.black); ! legendProperties.setChartFont(legendFont); ! legendProperties.setChartPadding(10); ! ! //Arrondi � la puissance 10 ! //Round up to the power of 10 ! DataAxisProperties dataAxisProperties= (DataAxisProperties) axisProperties.getYAxisProperties(); ! dataAxisProperties.setRoundToNearest(1); ! ! //Parametrage du nombre de graduation sur l'axe des ordonn�es ! //Set the number of ticks(?) for the ordinal axis ! dataAxisProperties.setNumItems(6); ! ! //utilisation de la virgule s'il y a lieu (normalement non) ! // Set the use of the comma if there are any (usually not) ! dataAxisProperties.setUseCommas(false); ! ! //Ne pas afficher les bordures sup�rieur et droite du chart ! // Don't attach upper borders and the right of the chart ! axisProperties.getYAxisProperties().setShowEndBorder(false); ! axisProperties.getXAxisProperties().setShowEndBorder(false); ! ! ! Stroke[] strokes = {LineChartProperties.DEFAULT_LINE_STROKE}; ! //Shape[] shapes = {null}; ! Shape[] shapes= { PointChartProperties.SHAPE_TRIANGLE }; ! lineChartProperties = new LineChartProperties(strokes, shapes); ! ! clusteredBarChartProperties = new ClusteredBarChartProperties(); ! ! //Param�trage de la largeur des barres de l'histogramme et non affichage des contours ! //Set the width of the bars and don't show the outline ! clusteredBarChartProperties.setWidthPercentage( 0.70f ); ! clusteredBarChartProperties.setShowOutlinesFlag( false ); ! } ! ! /********************************************************************************************** ! * ! **********************************************************************************************/ ! public void service( HttpServletRequest req, HttpServletResponse httpServletResponse ) throws ServletException, IOException ! { ! //---Some charts will need a second scale to render some values and then will ! //---need to render an axis at the right of the charts with it ! long secondScale=1; ! ! //---specific variable use to render negative value in all case ! double maxDataClustAbs = 0; ! double maxDataLineAbs = 0; ! int numberOfNegativ=0; ! int numberOfZero=0; ! ! try { ! ! String[] xAxisLabels = {"MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC", "JAN", "FEB"}; ! ! ! double[][] dataClust = new double[][]{ ! {3533, 101265, 76076, 86664, 135567, 87729, 85309, 143423, 18732, 111842, 39534, 11980} ! , {0, 103400, 65000, 88500, 143000, 80000, 88500, 143500, 99000, 118500, 38500, 18000} ! }; ! double[][] dataLine = new double[][]{ ! {21, 4, 1, 2, 3, 2, 3, 2, 93, 18, 54, 0} ! }; ! ! String title = "Chart Title"; ! String legendLabel1 = "Legend Label 1"; ! String legendLabel2 = "Legend Label 2"; ! String legendLabel3 = "Legend Label 3"; ! ! //IAxisDataSeries dataSeries = new DataSeries( xAxisLabels, null, null, title ); ! IAxisDataSeries dataSeries = new DataSeries( xAxisLabels, "X Axis title", "Left Y Axis title", title ); ! ! String[] legendLabelsClust = {legendLabel1, legendLabel2}; ! Paint[] clustPaints = new Paint[]{Color.pink, Color.blue}; ! ! String[] legendLabelsLine = {legendLabel3}; ! Paint[] linePaints = new Paint[]{Color.green}; ! ! //------------On r�cup�re une 2�me �chelle "secondScale"------------------ ! //------------et on fait un traitement pour les nombres n�gatifs---------- ! //------------We get back the 2nd scale "secondScale"--------------------- ! //-------------and we handle the negative numbers--------------------- ! //On identifie la valeur maximum absolue des data Clustered Bar ! //et on compte le nombre de z�ro et le nombre de chiffres n�gatifs ! // We identify the absolute maximum value of the data in the Clustered Bar ! // and we count the number of zero and negative digits ! for (int k=0; k<2; k++) { ! ! for (int j=0; j<xAxisLabels.length; j++) { ! if (maxDataClustAbs < (Math.abs(dataClust[k][j])) && (dataClust[k][j]!=0) ) { ! maxDataClustAbs=(Math.abs(dataClust[k][j])); ! } ! if (dataClust[k][j]<0) { ! numberOfNegativ+=1; ! } ! if (dataClust[k][j]==0) { ! numberOfZero+=1; ! } ! } ! } ! ! //On identifie la valeur maximum absolue des data Line ! //et on compte le nombre de z�ro et le nombre de chiffres n�gatifs ! // We identify the absolute maximum value of the data lines ! // and we count the number of zero and negative digits ! for (int j=0; j<xAxisLabels.length; j++) { ! if (maxDataLineAbs < (Math.abs(dataLine[0][j])) && (dataLine[0][j]!=0) ) { ! maxDataLineAbs=(Math.abs(dataLine[0][j])); ! } ! if (dataLine[0][j]<0) { ! numberOfNegativ+=1; ! } ! if (dataLine[0][j]==0) { ! numberOfZero+=1; ! } ! } ! ! //On d�finit la valeur de la seconde �chelle si les ordres de grandeurs ! //sont tr�s diff�rent (de l'ordre de 10). ! //We define the value of the second scale if the increment is an order of ! //magnitude greater ! if (maxDataClustAbs>10*maxDataLineAbs) { ! axisProperties.getYAxisProperties().setShowRightAxis(true); ! secondScale=Math.round(maxDataClustAbs/(maxDataLineAbs)); ! axisProperties.getYAxisProperties().setSecondScaleRight((float) (secondScale) ); ! ChartFont axisScaleFontRight = new ChartFont( new Font("Arial Narrow", Font.PLAIN, 10), Color.green.darker() ); ! axisProperties.getYAxisProperties().setScaleChartFontRight( axisScaleFontRight ); ! } ! ! //On v�rifie s'il y a des valeurs n�gatives ! // Check if there are negative numbers ! if (numberOfNegativ>0) { ! if ((maxDataLineAbs*secondScale)>maxDataClustAbs) { ! axisProperties.getYAxisProperties().setMinRightAxis((double) (-maxDataLineAbs*secondScale)); ! //Si les valeurs ne sont pas toutes n�gatives on affiche l'axe des ordonn�es ! //de mani�re a ce que le z�ro soit centr� ! // If the numbers are not all negative we center the ordinal axis around zero ! if (numberOfNegativ!=(3*xAxisLabels.length-numberOfZero)) { ! axisProperties.getYAxisProperties().setMaxRightAxis((double) (maxDataLineAbs*secondScale)); ! } ! } else { ! axisProperties.getYAxisProperties().setMinRightAxis((double) (-maxDataClustAbs)); ! if (numberOfNegativ!=(3*xAxisLabels.length-numberOfZero)) { ! axisProperties.getYAxisProperties().setMaxRightAxis((double) (maxDataClustAbs)); ! } ! } ! } ! ! dataSeries.addIAxisPlotDataSet( new AxisChartDataSet( dataClust, legendLabelsClust, clustPaints, ChartType.BAR_CLUSTERED, clusteredBarChartProperties ) ); ! dataSeries.addIAxisPlotDataSet( new AxisChartDataSet( dataLine, legendLabelsLine, linePaints, ChartType.LINE, lineChartProperties ) ); ! AxisChart axisChart = new AxisChart( dataSeries, chartProperties, axisProperties, legendProperties, width, height ); ! ! ServletEncoderHelper.encodeJPEG13( axisChart, 1.0f, httpServletResponse ); ! } ! catch( Throwable throwable ) { ! //HACK do your error handling here... ! throwable.printStackTrace(); ! } ! } ! } \ No newline at end of file --- 1,279 ---- ! ! /*********************************************************************************************** ! * File Info: $Id$ ! * Copyright (C) 2002 ! * Author: Nathaniel G. Auvil ! * Contributor(s): ! * ! * Copyright 2002 (C) Nathaniel G. Auvil. All Rights Reserved. ! * ! * Redistribution and use of this software and associated documentation ("Software"), with or ! * without modification, are permitted provided that the following conditions are met: ! * ! * 1. Redistributions of source code must retain copyright statements and notices. ! * Redistributions must also contain a copy of this document. ! * ! * 2. Redistributions in binary form must reproduce the above copyright notice, this list of ! * conditions and the following disclaimer in the documentation and/or other materials ! * provided with the distribution. ! * ! * 3. The name "jCharts" or "Nathaniel G. Auvil" must not be used to endorse or promote ! * products derived from this Software without prior written permission of Nathaniel G. ! * Auvil. For written permission, please contact nat...@us... ! * ! * 4. Products derived from this Software may not be called "jCharts" nor may "jCharts" appear ! * in their names without prior written permission of Nathaniel G. Auvil. jCharts is a ! * registered trademark of Nathaniel G. Auvil. ! * ! * 5. Due credit should be given to the jCharts Project (http://jcharts.sourceforge.net/). ! * ! * THIS SOFTWARE IS PROVIDED BY Nathaniel G. Auvil AND CONTRIBUTORS ``AS IS'' AND ANY ! * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ! * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ! * jCharts OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ! * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF ! * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ! * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,STRICT LIABILITY, OR TORT ! * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN ! * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE ! ************************************************************************************************/ ! ! package org.krysalis.jcharts.demo.simpleservlet; ! ! ! import org.krysalis.jcharts.axisChart.AxisChart; ! import org.krysalis.jcharts.chartData.AxisChartDataSet; ! import org.krysalis.jcharts.chartData.DataSeries; ! import org.krysalis.jcharts.chartData.interfaces.IAxisDataSeries; ! import org.krysalis.jcharts.encoders.ServletEncoderHelper; ! import org.krysalis.jcharts.properties.AxisProperties; ! import org.krysalis.jcharts.properties.ChartProperties; ! import org.krysalis.jcharts.properties.ClusteredBarChartProperties; ! import org.krysalis.jcharts.properties.DataAxisProperties; ! import org.krysalis.jcharts.properties.LegendProperties; ! import org.krysalis.jcharts.properties.LineChartProperties; ! import org.krysalis.jcharts.properties.PointChartProperties; ! import org.krysalis.jcharts.properties.util.ChartFont; ! import org.krysalis.jcharts.types.ChartType; ! ! import javax.servlet.ServletException; ! import javax.servlet.http.HttpServletRequest; ! import javax.servlet.http.HttpServletResponse; ! import java.awt.*; ! import java.io.IOException; ! ! // Dual Y axis changes courtesy of St�phane NGUYEN integrated by CMC 25Aug03 ! // French translation courtesy of my good wife Jacki ... ! public class DualYAxis extends ChartServlet { ! ! ! //---all of the charts will have some properties. ! private LineChartProperties lineChartProperties; ! private ClusteredBarChartProperties clusteredBarChartProperties; ! ! protected LegendProperties legendProperties; ! protected ChartProperties chartProperties; ! protected AxisProperties axisProperties; ! ! //---all of the charts have the same size ! protected int width = 750; ! protected int height = 430; ! ! ! public void init() { ! ! ! //---------------------Font & Police---------------------------------------- ! ! legendProperties = new LegendProperties(); ! chartProperties = new ChartProperties(); ! axisProperties = new AxisProperties(false); ! ! ChartFont axisScaleFont = new ChartFont(new Font("Arial Narrow", Font.PLAIN, 10), Color.black); ! axisProperties.getXAxisProperties().setScaleChartFont(axisScaleFont); ! axisProperties.getYAxisProperties().setScaleChartFont(axisScaleFont); ! ! ChartFont axisTitleFont = new ChartFont(new Font("Arial Narrow", Font.PLAIN, 13), Color.black); ! axisProperties.getXAxisProperties().setTitleChartFont(axisTitleFont); ! axisProperties.getYAxisProperties().setTitleChartFont(axisTitleFont); ! ! ChartFont titleFont = new ChartFont(new Font("Georgia Negreta cursiva", Font.PLAIN, 15), Color.black); ! chartProperties.setTitleFont(titleFont); ! ! //On fixe la marge avec le cadre ! // Set the margin within the frame ! chartProperties.setEdgePadding(2f); ! ! //On met le graphe sur un fond gris clair ! // Set the chart against a plain grey background ! axisProperties.setBackgroundPaint(new Color (245, 245, 245)); ! ! //Param�trage de la bo�te de l�gende ! //Parameters for the legend box ! //legendProperties.setPlacement(LegendAreaProperties.RIGHT); ! //legendProperties.setNumColumns(1); ! //legendProperties.setFont( new Font("Arial Narrow", Font.PLAIN, 13) ); ! //legendProperties.setFontPaint(Color.black); ! ChartFont legendFont = new ChartFont(new Font("Arial Narrow", Font.PLAIN, 13), Color.black); ! legendProperties.setChartFont(legendFont); ! legendProperties.setChartPadding(10); ! ! //Arrondi � la puissance 10 ! //Round up to the power of 10 ! DataAxisProperties dataAxisProperties= (DataAxisProperties) axisProperties.getYAxisProperties(); ! dataAxisProperties.setRoundToNearest(1); ! ! //Parametrage du nombre de graduation sur l'axe des ordonn�es ! //Set the number of ticks(?) for the ordinal axis ! dataAxisProperties.setNumItems(6); ! ! //utilisation de la virgule s'il y a lieu (normalement non) ! // Set the use of the comma if there are any (usually not) ! dataAxisProperties.setUseCommas(false); ! ! //Ne pas afficher les bordures sup�rieur et droite du chart ! // Don't attach upper borders and the right of the chart ! axisProperties.getYAxisProperties().setShowEndBorder(false); ! axisProperties.getXAxisProperties().setShowEndBorder(false); ! ! ! Stroke[] strokes = {LineChartProperties.DEFAULT_LINE_STROKE}; ! //Shape[] shapes = {null}; ! Shape[] shapes= { PointChartProperties.SHAPE_TRIANGLE }; ! lineChartProperties = new LineChartProperties(strokes, shapes); ! ! clusteredBarChartProperties = new ClusteredBarChartProperties(); ! ! //Param�trage de la largeur des barres de l'histogramme et non affichage des contours ! //Set the width of the bars and don't show the outline ! clusteredBarChartProperties.setWidthPercentage( 0.70f ); ! clusteredBarChartProperties.setShowOutlinesFlag( false ); ! } ! ! /********************************************************************************************** ! * ! **********************************************************************************************/ ! public void service( HttpServletRequest req, HttpServletResponse httpServletResponse ) throws ServletException, IOException ! { ! //---Some charts will need a second scale to render some values and then will ! //---need to render an axis at the right of the charts with it ! long secondScale=1; ! ! //---specific variable use to render negative value in all case ! double maxDataClustAbs = 0; ! double maxDataLineAbs = 0; ! int numberOfNegativ=0; ! int numberOfZero=0; ! ! try { ! ! String[] xAxisLabels = {"MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC", "JAN", "FEB"}; ! ! ! double[][] dataClust = new double[][]{ ! {3533, 101265, 76076, 86664, 135567, 87729, 85309, 143423, 18732, 111842, 39534, 11980} ! , {0, 103400, 65000, 88500, 143000, 80000, 88500, 143500, 99000, 118500, 38500, 18000} ! }; ! double[][] dataLine = new double[][]{ ! {21, 4, 1, 2, 3, 2, 3, 2, 93, 18, 54, 0} ! }; ! ! String title = "Chart Title"; ! String legendLabel1 = "Legend Label 1"; ! String legendLabel2 = "Legend Label 2"; ! String legendLabel3 = "Legend Label 3"; ! ! //IAxisDataSeries dataSeries = new DataSeries( xAxisLabels, null, null, title ); ! IAxisDataSeries dataSeries = new DataSeries( xAxisLabels, "X Axis title", "Left Y Axis title", title ); ! ! String[] legendLabelsClust = {legendLabel1, legendLabel2}; ! Paint[] clustPaints = new Paint[]{Color.pink, Color.blue}; ! ! String[] legendLabelsLine = {legendLabel3}; ! Paint[] linePaints = new Paint[]{Color.green}; ! ! //------------On r�cup�re une 2�me �chelle "secondScale"------------------ ! //------------et on fait un traitement pour les nombres n�gatifs---------- ! //------------We get back the 2nd scale "secondScale"--------------------- ! //-------------and we handle the negative numbers--------------------- ! //On identifie la valeur maximum absolue des data Clustered Bar ! //et on compte le nombre de z�ro et le nombre de chiffres n�gatifs ! // We identify the absolute maximum value of the data in the Clustered Bar ! // and we count the number of zero and negative digits ! for (int k=0; k<2; k++) { ! ! for (int j=0; j<xAxisLabels.length; j++) { ! if (maxDataClustAbs < (Math.abs(dataClust[k][j])) && (dataClust[k][j]!=0) ) { ! maxDataClustAbs=(Math.abs(dataClust[k][j])); ! } ! if (dataClust[k][j]<0) { ! numberOfNegativ+=1; ! } ! if (dataClust[k][j]==0) { ! numberOfZero+=1; ! } ! } ! } ! ! //On identifie la valeur maximum absolue des data Line ! //et on compte le nombre de z�ro et le nombre de chiffres n�gatifs ! // We identify the absolute maximum value of the data lines ! // and we count the number of zero and negative digits ! for (int j=0; j<xAxisLabels.length; j++) { ! if (maxDataLineAbs < (Math.abs(dataLine[0][j])) && (dataLine[0][j]!=0) ) { ! maxDataLineAbs=(Math.abs(dataLine[0][j])); ! } ! if (dataLine[0][j]<0) { ! numberOfNegativ+=1; ! } ! if (dataLine[0][j]==0) { ! numberOfZero+=1; ! } ! } ! ! /* ! //On d�finit la valeur de la seconde �chelle si les ordres de grandeurs ! //sont tr�s diff�rent (de l'ordre de 10). ! //We define the value of the second scale if the increment is an order of ! //magnitude greater ! if (maxDataClustAbs>10*maxDataLineAbs) { ! axisProperties.getYAxisProperties().setShowRightAxis(true); ! secondScale=Math.round(maxDataClustAbs/(maxDataLineAbs)); ! axisProperties.getYAxisProperties().setSecondScaleRight((float) (secondScale) ); ! ChartFont axisScaleFontRight = new ChartFont( new Font("Arial Narrow", Font.PLAIN, 10), Color.green.darker() ); ! axisProperties.getYAxisProperties().setScaleChartFontRight( axisScaleFontRight ); ! } ! ! //On v�rifie s'il y a des valeurs n�gatives ! // Check if there are negative numbers ! if (numberOfNegativ>0) { ! if ((maxDataLineAbs*secondScale)>maxDataClustAbs) { ! axisProperties.getYAxisProperties().setMinRightAxis((double) (-maxDataLineAbs*secondScale)); ! //Si les valeurs ne sont pas toutes n�gatives on affiche l'axe des ordonn�es ! //de mani�re a ce que le z�ro soit centr� ! // If the numbers are not all negative we center the ordinal axis around zero ! if (numberOfNegativ!=(3*xAxisLabels.length-numberOfZero)) { ! axisProperties.getYAxisProperties().setMaxRightAxis((double) (maxDataLineAbs*secondScale)); ! } ! } else { ! axisProperties.getYAxisProperties().setMinRightAxis((double) (-maxDataClustAbs)); ! if (numberOfNegativ!=(3*xAxisLabels.length-numberOfZero)) { ! axisProperties.getYAxisProperties().setMaxRightAxis((double) (maxDataClustAbs)); ! } ! } ! } ! */ ! ! dataSeries.addIAxisPlotDataSet( new AxisChartDataSet( dataClust, legendLabelsClust, clustPaints, ChartType.BAR_CLUSTERED, clusteredBarChartProperties ) ); ! dataSeries.addIAxisPlotDataSet( new AxisChartDataSet( dataLine, legendLabelsLine, linePaints, ChartType.LINE, lineChartProperties ) ); ! AxisChart axisChart = new AxisChart( dataSeries, chartProperties, axisProperties, legendProperties, width, height ); ! ! ServletEncoderHelper.encodeJPEG13( axisChart, 1.0f, httpServletResponse ); ! } ! catch( Throwable throwable ) { ! //HACK do your error handling here... ! throwable.printStackTrace(); ! } ! } ! } \ No newline at end of file |
From: Chris M. <ki...@us...> - 2004-07-01 02:06:49
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11406/src/java/org/krysalis/jcharts/test Added Files: DualAxisComboTestDriver.java Log Message: Test case for Dual Y axis changes --- NEW FILE: DualAxisComboTestDriver.java --- /*********************************************************************************************** * Copyright 2002 (C) Nathaniel G. Auvil. All Rights Reserved. * * Redistribution and use of this software and associated documentation ("Software"), with or * without modification, are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain copyright statements and notices. * Redistributions must also contain a copy of this document. * * 2. Redistributions in binary form must reproduce the above copyright notice, this list of * conditions and the following disclaimer in the documentation and/or other materials * provided with the distribution. * * 3. The name "jCharts" or "Nathaniel G. Auvil" must not be used to endorse or promote * products derived from this Software without prior written permission of Nathaniel G. * Auvil. For written permission, please contact nat...@us... * * 4. Products derived from this Software may not be called "jCharts" nor may "jCharts" appear * in their names without prior written permission of Nathaniel G. Auvil. jCharts is a * registered trademark of Nathaniel G. Auvil. * * 5. Due credit should be given to the jCharts Project (http://jcharts.sourceforge.net/). * * THIS SOFTWARE IS PROVIDED BY Nathaniel G. Auvil AND CONTRIBUTORS ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL * jCharts OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE ************************************************************************************************/ package org.krysalis.jcharts.test; import java.awt.*; import org.krysalis.jcharts.axisChart.AxisChart; import org.krysalis.jcharts.axisChart.customRenderers.axisValue.renderers.ValueLabelPosition; import org.krysalis.jcharts.axisChart.customRenderers.axisValue.renderers.ValueLabelRenderer; import org.krysalis.jcharts.chartData.*; import org.krysalis.jcharts.chartData.interfaces.IAxisDataSeries; import org.krysalis.jcharts.encoders.*; import org.krysalis.jcharts.imageMap.ImageMap; import org.krysalis.jcharts.properties.*; import org.krysalis.jcharts.properties.util.*; import org.krysalis.jcharts.types.ChartType; /****************************************************************************************** * This file provides examples of how to create all the different chart types provided by * this package. * * @author Chris McKay * @version $Id: DualAxisComboTestDriver.java,v 1.1 2004/07/01 02:06:40 kiwicmc Exp $ *******************************************************************************************/ public class DualAxisComboTestDriver { boolean supportsImageMap() { return true; } public static void main(String[] args) throws PropertyException, ChartDataException { ChartProperties chartProperties = new ChartProperties(); StackedBarChartProperties stackedBarChartProperties = new StackedBarChartProperties();; BarChartProperties barChartProperties = new BarChartProperties(); IAxisDataSeries dataSeries; AxisChartDataSet axisChartDataSet; AxisProperties axisProperties = new AxisProperties(false); ChartFont axisScaleFont; ChartFont axisTitleFont; axisScaleFont = new ChartFont(new Font("Arial", Font.BOLD, 10), Color.black); axisTitleFont = new ChartFont(new Font("Arial", Font.BOLD, 10), Color.black); axisProperties.getYAxisProperties().setShowEndBorder(false); axisProperties.getXAxisProperties().setShowEndBorder(false); axisProperties.getXAxisProperties().setLabelRotationAngle(30); //Dual axis properties ((DataAxisProperties) axisProperties.getYAxisProperties()).setNumItems(9); ((DataAxisProperties) axisProperties.getYAxisProperties()).setUserDefinedScale(0, 25); // LHS axis look and feel axisProperties.getYAxisProperties().setScaleChartFont(axisTitleFont); axisProperties.getYAxisProperties().setTitleChartFont(axisTitleFont); axisProperties.getYAxisProperties().setAxisTitleChartFont(axisTitleFont); axisProperties.getXAxisProperties().setScaleChartFont(axisScaleFont); axisProperties.getXAxisProperties().setTitleChartFont(axisScaleFont); axisProperties.getXAxisProperties().setAxisTitleChartFont(axisScaleFont); axisProperties.getRightYAxisProperties().setShowAxis(true); ((DataAxisProperties) axisProperties.getRightYAxisProperties()).setNumItems(5); ((DataAxisProperties) axisProperties.getRightYAxisProperties()).setUserDefinedScale(0, 25); // RHS axis look and feel axisProperties.getRightYAxisProperties().setTitleChartFont(axisTitleFont); axisProperties.getRightYAxisProperties().setScaleChartFont(axisScaleFont); axisProperties.getRightYAxisProperties().setAxisTitleChartFont(axisTitleFont); axisProperties.getRightYAxisProperties().setPaddingBetweenAxisTitleAndLabels(3); axisProperties.getRightYAxisProperties().setTitleChartFont(axisTitleFont); String[] axisLabels = {"Aug 13", "Aug 14", "Aug 15", "Aug 16", "Aug 17", "Aug 18", "Aug 19", "Aug 20", "Aug 21", "Aug 22", "Aug 23", "Aug 24", "Aug 25", "Aug 26"}; dataSeries = new DataSeries(axisLabels, " ", "Total Backup Events", "Success Percentage", null); stackedBarChartProperties.setShowOutlinesFlag(false); //Bars double[][] barData = { { 11, 120, 163, 150, 107, 148, 152, 169, 144, 140, 159, 131, 176, 66}, { 0, 6, 4, 6, 9, 6, 7, 7, 7, 12, 9, 13, 11, 2}, { 0, 12, 4, 2, 1, 22, 5, 2, 2, 2, 0, 0, 3, 3}}; Paint[] paints = {new Color(0x00, 0x56,0x99), new Color(0xD1,0xD6,0x18), new Color(0xB3,0x05,0x05) }; String[] legendLabels = {"Successful", "Warnings", "Failures"}; axisChartDataSet = new AxisChartDataSet(barData, legendLabels, paints, ChartType.BAR_STACKED, stackedBarChartProperties); // Stroke[] lineStrokes1 = {LineChartProperties.DASHED_LINE_STROKE, LineChartProperties.DASH_DOT_LINE_STROKE, LineChartProperties.DEFAULT_LINE_STROKE}; // Shape[] lineShapes1 = {PointChartProperties.SHAPE_TRIANGLE, PointChartProperties.SHAPE_CIRCLE, PointChartProperties.SHAPE_DIAMOND}; // LineChartProperties lineChartProperties1 = new LineChartProperties(lineStrokes1, lineShapes1); // axisChartDataSet = new AxisChartDataSet(barData, legendLabels, paints, ChartType.LINE, lineChartProperties1); dataSeries.addIAxisPlotDataSet(axisChartDataSet); //Lines double[][] lineData = { {100, 91, 97, 98, 99, 87, 96, 98, 98, 98, 100, 100, 98, 95}, // { 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85}}; { 76, 76, 76, 76, 83, 83, 83, 83, 83, 83, 83, 76, 76, 76}}; Stroke[] lineStrokes = {LineChartProperties.DASHED_LINE_STROKE, LineChartProperties.DASH_DOT_LINE_STROKE}; Shape[] lineShapes = {PointChartProperties.SHAPE_TRIANGLE, PointChartProperties.SHAPE_CIRCLE}; Paint[] linePaints = {Color.GRAY, Color.BLUE}; String[] lineLegendLabels = {"Success Percentage", "Successful Backups Goal - 85.0%"}; LineChartProperties lineChartProperties = new LineChartProperties(lineStrokes, lineShapes); axisChartDataSet = new AxisChartDataSet(lineData, true, lineLegendLabels, linePaints, ChartType.LINE, lineChartProperties); dataSeries.addIAxisPlotDataSet(axisChartDataSet); LegendProperties legendProperties = new LegendProperties(); legendProperties.setBorderStroke(null); legendProperties.setChartFont(axisScaleFont); AxisChart axisChart = new AxisChart(dataSeries, chartProperties, axisProperties, legendProperties, 752, 485 ); axisChart.renderWithImageMap(); ChartTestDriver.exportImage( axisChart, "DualYAxisChart.png" ); } } |
From: Chris M. <ki...@us...> - 2004-07-01 02:05:57
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11279/src/java/org/krysalis/jcharts/chartData Modified Files: ScatterPlotDataSet.java StockChartDataSet.java Log Message: Dual Y axis changes, add method plotAgainstRHS as Interface iAxisPlotDataSet has changed but dual axis changes not fully implemented Index: StockChartDataSet.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/StockChartDataSet.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** StockChartDataSet.java 17 May 2003 16:58:11 -0000 1.1 --- StockChartDataSet.java 1 Jul 2004 02:05:47 -0000 1.2 *************** *** 66,69 **** --- 66,70 ---- private Paint[] paints; private StockChartProperties stockChartProperties; + private boolean plotAgainstRHS = false; *************** *** 341,344 **** --- 342,355 ---- } + /****************************************************************************************** + * Returns whether the data set should be plotted against the right hand Y axis + * + * @return plotAgainstRHS + * @see ChartType + *******************************************************************************************/ + public final boolean getPlotAgainstRHS() + { + return this.plotAgainstRHS; + } /********************************************************************************************* Index: ScatterPlotDataSet.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/ScatterPlotDataSet.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ScatterPlotDataSet.java 31 May 2004 16:24:34 -0000 1.2 --- ScatterPlotDataSet.java 1 Jul 2004 02:05:47 -0000 1.3 *************** *** 64,67 **** --- 64,68 ---- private int numDataItems= -1; + private boolean plotAgainstRHS = false; *************** *** 245,248 **** --- 246,260 ---- + /****************************************************************************************** + * Returns whether the data set should be plotted against the right hand Y axis + * + * @return plotAgainstRHS + * @see ChartType + *******************************************************************************************/ + public final boolean getPlotAgainstRHS() + { + return this.plotAgainstRHS; + } + /********************************************************************************************* * Enables the testing routines to display the contents of this Object. *************** *** 267,269 **** --- 279,282 ---- } + } |
From: Chris M. <ki...@us...> - 2004-07-01 02:04:20
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11036/src/java/org/krysalis/jcharts/chartData Modified Files: AxisChartDataSet.java Log Message: fix typo in comment Index: AxisChartDataSet.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/AxisChartDataSet.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AxisChartDataSet.java 1 Jul 2004 01:37:50 -0000 1.2 --- AxisChartDataSet.java 1 Jul 2004 02:04:12 -0000 1.3 *************** *** 152,156 **** /****************************************************************************************** ! * Returns whether the data set should be plotted against the rught hand Y axis * * @return plotAgainstRHS --- 152,156 ---- /****************************************************************************************** ! * Returns whether the data set should be plotted against the right hand Y axis * * @return plotAgainstRHS |
From: Chris M. <ki...@us...> - 2004-07-01 02:03:12
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/axisChart In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10856/src/java/org/krysalis/jcharts/axisChart Modified Files: ScatterPlotAxisChart.java Log Message: Dual Y axis changes, adjust method but dual axis changes not fully implemented Index: ScatterPlotAxisChart.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/axisChart/ScatterPlotAxisChart.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ScatterPlotAxisChart.java 20 Jun 2003 01:54:58 -0000 1.2 --- ScatterPlotAxisChart.java 1 Jul 2004 02:03:02 -0000 1.3 *************** *** 194,199 **** ! //---if yAxisTitle is null, do not show title ! this.yAxis.computeMinimumWidthNeeded( super.getIAxisDataSeries().getYAxisTitle() ); this.xAxis.computeMinimumHeightNeeded( super.getIAxisDataSeries().getXAxisTitle() ); } --- 194,199 ---- ! //---if yAxisTitle is null, do not show title - need to add in RHS axis title support ! this.yAxis.computeMinimumWidthNeeded( super.getIAxisDataSeries().getYAxisTitle(), null ); this.xAxis.computeMinimumHeightNeeded( super.getIAxisDataSeries().getXAxisTitle() ); } |
From: Chris M. <ki...@us...> - 2004-07-01 01:49:43
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/properties In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9071/src/java/org/krysalis/jcharts/properties Modified Files: LineChartProperties.java Log Message: Addition of some more line strokes defaults - DOT, DASH and DOT-DASH Index: LineChartProperties.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/properties/LineChartProperties.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** LineChartProperties.java 8 Aug 2003 08:51:27 -0000 1.2 --- LineChartProperties.java 1 Jul 2004 01:49:34 -0000 1.3 *************** *** 51,55 **** --- 51,62 ---- final public class LineChartProperties extends AxisChartTypeProperties { + private static final float DOT[] = {2.0f}; + private static final float DASH[] = {5.0f}; + private static final float DASH_DOT[] = {5.0f, 1.0f}; + public static final Stroke DEFAULT_LINE_STROKE=new BasicStroke( 1.5f ); + public static final Stroke DOT_LINE_STROKE = new BasicStroke(1f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, DOT[0], DOT , 0.0f); + public static final Stroke DASHED_LINE_STROKE = new BasicStroke(1f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, DASH[0], DASH , 0.0f); + public static final Stroke DASH_DOT_LINE_STROKE = new BasicStroke(1f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1.0f, DASH_DOT , 0.0f); private Stroke[] lineStrokes; |
From: Chris M. <ki...@us...> - 2004-07-01 01:48:03
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/properties In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8904/src/java/org/krysalis/jcharts/properties Modified Files: AxisTypeProperties.java Log Message: Dual Y axis changes, removal of redundant methods that were used in original dual axis mods Index: AxisTypeProperties.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/properties/AxisTypeProperties.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AxisTypeProperties.java 14 Jun 2004 01:24:16 -0000 1.3 --- AxisTypeProperties.java 1 Jul 2004 01:47:53 -0000 1.4 *************** *** 87,102 **** private boolean showEndBorder = true; ! private boolean showAxisLabels= true; ! // Dual Y axis changes integrated CMC 25Aug03 ! //variable added for the right axis ! //the method corresponding are so implemented ! private ChartFont scaleChartFontRight = ChartFont.DEFAULT_AXIS_SCALE; ! private boolean showRightAxis = false; ! private float secondScaleRight=1; ! private double minRightAxis = 0; ! private double maxRightAxis = 0; - private int labelRotationAngle = 0; private ChartFont titleChartFont= ChartFont.DEFAULT_AXIS_TITLE; --- 87,95 ---- private boolean showEndBorder = true; ! private boolean showAxisLabels= true; ! private boolean showAxis = true; ! private int labelRotationAngle = 0; private ChartFont titleChartFont= ChartFont.DEFAULT_AXIS_TITLE; *************** *** 123,127 **** } - public boolean showAxisLabels() { --- 116,119 ---- *************** *** 255,270 **** } ! // Dual Y axis changes integrated CMC 25Aug03 ! public ChartFont getScaleChartFontRight() ! { ! return scaleChartFontRight; ! } ! ! ! public void setScaleChartFontRight( ChartFont scaleChartFontRight ) ! { ! this.scaleChartFontRight = scaleChartFontRight; ! } ! public ChartFont getAxisTitleChartFont() { --- 247,251 ---- } ! public ChartFont getAxisTitleChartFont() { *************** *** 290,343 **** } ! ! // Dual Y axis changes integrated CMC 25Aug03 ! public boolean getShowRightAxis() { ! return this.showRightAxis; } ! public void setShowRightAxis( boolean showRightAxis ) { ! this.showRightAxis = showRightAxis; } ! ! public float getSecondScaleRight() ! { ! return this.secondScaleRight; ! } ! ! ! public void setSecondScaleRight(float secondScaleRight) ! { ! this.secondScaleRight=secondScaleRight; ! } ! ! public double getMinRightAxis() ! { ! return this.minRightAxis; ! } ! ! ! public void setMinRightAxis(double minRightAxis) ! { ! this.minRightAxis=minRightAxis; ! } ! ! ! public double getMaxRightAxis() ! { ! return this.maxRightAxis; ! } ! ! ! public void setMaxRightAxis(double maxRightAxis) ! { ! this.maxRightAxis=maxRightAxis; ! } ! ! ! public float getPaddingBetweenAxisLabels() { return this.paddingBetweenAxisLabels; --- 271,286 ---- } ! public boolean getShowAxis() { ! return this.showAxis; } ! public void setShowAxis( boolean showAxis ) { ! this.showAxis = showAxis; } ! public float getPaddingBetweenAxisLabels() { return this.paddingBetweenAxisLabels; |
From: Chris M. <ki...@us...> - 2004-07-01 01:44:53
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/properties In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8590/src/java/org/krysalis/jcharts/properties Modified Files: AxisProperties.java Log Message: Dual Y axis changes, add space for RHS axis type properties Index: AxisProperties.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/properties/AxisProperties.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AxisProperties.java 17 May 2003 17:00:32 -0000 1.1 --- AxisProperties.java 1 Jul 2004 01:44:45 -0000 1.2 *************** *** 52,55 **** --- 52,56 ---- private AxisTypeProperties xAxisProperties; private AxisTypeProperties yAxisProperties; + private AxisTypeProperties yRightAxisProperties = null; private boolean isPlotHorizontal= false; *************** *** 89,92 **** --- 90,95 ---- this.xAxisProperties= new LabelAxisProperties(); this.yAxisProperties= new DataAxisProperties(); + this.yRightAxisProperties = new DataAxisProperties(); + this.yRightAxisProperties.setShowAxis(false); // right axis must be explictly turned on } } *************** *** 117,121 **** --- 120,130 ---- } + + public AxisTypeProperties getRightYAxisProperties() + { + return yRightAxisProperties; + } + public boolean isPlotHorizontal() { |
From: Chris M. <ki...@us...> - 2004-07-01 01:43:44
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/processors In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8462/src/java/org/krysalis/jcharts/chartData/processors Modified Files: AxisChartDataProcessor.java Log Message: Dual Y axis changes, add support for min and max RHS values Index: AxisChartDataProcessor.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/processors/AxisChartDataProcessor.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AxisChartDataProcessor.java 8 Aug 2003 08:51:27 -0000 1.2 --- AxisChartDataProcessor.java 1 Jul 2004 01:43:35 -0000 1.3 *************** *** 69,72 **** --- 69,75 ---- private double min; + private double rightMax; + private double rightMin; + //private TextLayout titleTextLayout; *************** *** 150,153 **** --- 153,159 ---- IAxisPlotDataSet iAxisPlotDataSet; Iterator iterator = iDataSeries.getIAxisPlotDataSetIterator(); + + double tempMin = 0.0d; + double tempMax = 0.0d; //LOOP *************** *** 156,159 **** --- 162,173 ---- iAxisPlotDataSet = ( IAxisPlotDataSet ) iterator.next(); + if ( iAxisPlotDataSet.getPlotAgainstRHS() ) { + // save the min and max values for restoration later on + tempMin = this.getMinValue(); + tempMax = this.getMaxValue(); + this.setMinValue(0.0d); + this.setMaxValue(0.0d); + } + if( iAxisPlotDataSet.getChartType().isStacked() ) { *************** *** 174,177 **** --- 188,199 ---- } } + if ( iAxisPlotDataSet.getPlotAgainstRHS() ) { + // set the RHS min and max values and restore the current LHS values + this.setRightMinValue(min); + this.setRightMaxValue(max); + this.setMinValue(tempMin); + this.setMaxValue(tempMax); + } + } } *************** *** 187,190 **** --- 209,221 ---- } + /****************************************************************************************** + * + * + ******************************************************************************************/ + void setRightMaxValue( double max ) + { + this.rightMax = max; + } + /****************************************************************************************** *************** *** 198,201 **** --- 229,242 ---- } + /****************************************************************************************** + * + * + * + ******************************************************************************************/ + public double getRightMaxValue() + { + return this.rightMax; + } + /****************************************************************************************** *************** *** 212,215 **** --- 253,266 ---- * * + ******************************************************************************************/ + void setRightMinValue( double min ) + { + this.rightMin = min; + } + + + /****************************************************************************************** + * + * * ******************************************************************************************/ *************** *** 219,222 **** --- 270,283 ---- } + /****************************************************************************************** + * + * + * + ******************************************************************************************/ + public double getRightMinValue() + { + return this.rightMin; + } + public int getNumberOfElementsInADataSet() |
From: Chris M. <ki...@us...> - 2004-07-01 01:42:38
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/interfaces In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8286/src/java/org/krysalis/jcharts/chartData/interfaces Modified Files: IAxisPlotDataSet.java Log Message: Dual Y axis changes, add boolean to signify that DataSet is to be plotted against RHS Index: IAxisPlotDataSet.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/interfaces/IAxisPlotDataSet.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** IAxisPlotDataSet.java 17 May 2003 16:57:26 -0000 1.1 --- IAxisPlotDataSet.java 1 Jul 2004 01:42:29 -0000 1.2 *************** *** 66,69 **** --- 66,75 ---- public ChartType getChartType(); + /****************************************************************************************** + * Returns whether the data is to be plotted on the right hand Y axis + * + * @return boolean + *******************************************************************************************/ + public boolean getPlotAgainstRHS(); /****************************************************************************************** |
From: Chris M. <ki...@us...> - 2004-07-01 01:41:52
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/interfaces In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8184/src/java/org/krysalis/jcharts/chartData/interfaces Modified Files: IAxisDataSeries.java Log Message: Dual Y axis changes, add support for rightAxisTitle Index: IAxisDataSeries.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/interfaces/IAxisDataSeries.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** IAxisDataSeries.java 28 Aug 2003 00:56:34 -0000 1.2 --- IAxisDataSeries.java 1 Jul 2004 01:41:43 -0000 1.3 *************** *** 66,69 **** --- 66,76 ---- public String getYAxisTitle(); + /****************************************************************************************** + * Returns the right hand side y-axis title. + * + * @return String the right hand y-axis title. If this returns NULL, no title will be displayed. + ******************************************************************************************/ + public String getRightYAxisTitle(); + /****************************************************************************************** |
From: Chris M. <ki...@us...> - 2004-07-01 01:41:04
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8098/src/java/org/krysalis/jcharts/chartData Modified Files: DataSeries.java Log Message: Dual Y axis changes, add support for rightAxisTitle Index: DataSeries.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/DataSeries.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DataSeries.java 17 May 2003 16:58:11 -0000 1.1 --- DataSeries.java 1 Jul 2004 01:40:56 -0000 1.2 *************** *** 73,76 **** --- 73,93 ---- } + /****************************************************************************************** + * Constructor + * + * @param axisLabels + * @param xAxisTitle if this is NULL, no title will be displayed + * @param yAxisTitle if this is NULL, no title will be displayed + * @param rightYAxisTitle if this is NULL, no title will be displayed + * @param chartTitle if this is NULL, no title will be displayed + *******************************************************************************************/ + public DataSeries( String[] axisLabels, String xAxisTitle, String yAxisTitle, String rightYAxisTitle, + String chartTitle ) + { + super( xAxisTitle, yAxisTitle, rightYAxisTitle, chartTitle ); + + this.axisLabels = axisLabels; + } + /****************************************************************************************** |
From: Chris M. <ki...@us...> - 2004-07-01 01:40:16
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7921/src/java/org/krysalis/jcharts/chartData Modified Files: AxisDataSeries.java Log Message: Dual Y axis changes, add String for rightAxisTitle Index: AxisDataSeries.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/AxisDataSeries.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AxisDataSeries.java 31 May 2004 16:24:34 -0000 1.2 --- AxisDataSeries.java 1 Jul 2004 01:40:05 -0000 1.3 *************** *** 61,64 **** --- 61,65 ---- private String xAxisTitle; private String yAxisTitle; + private String rightYAxisTitle = null; protected HashMap dataSets; *************** *** 84,87 **** --- 85,106 ---- /****************************************************************************************** + * Constructor + * + * @param xAxisTitle if this is NULL, no title will be displayed + * @param yAxisTitle if this is NULL, no title will be displayed + * @param rightYAxisTitle if this is NULL, no title will be displayed + * @param chartTitle if this is NULL, no title will be displayed + *******************************************************************************************/ + public AxisDataSeries( String xAxisTitle, String yAxisTitle, String rightYAxisTitle, String chartTitle ) + { + this.xAxisTitle=xAxisTitle; + this.yAxisTitle=yAxisTitle; + this.rightYAxisTitle=rightYAxisTitle; + this.chartTitle=chartTitle; + dataSets = new HashMap(); + } + + + /****************************************************************************************** * Returns the x-axis title * *************** *** 104,107 **** --- 123,136 ---- } + /****************************************************************************************** + * Returns the right hand side y-axis title + * + * @return String + *******************************************************************************************/ + public String getRightYAxisTitle() + { + return this.rightYAxisTitle; + } + /****************************************************************************************** |
From: Chris M. <ki...@us...> - 2004-07-01 01:37:58
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7698/src/java/org/krysalis/jcharts/chartData Modified Files: AxisChartDataSet.java Log Message: Dual Y axis changes, add boolean to signify that DataSet is to be plotted against RHS Index: AxisChartDataSet.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/chartData/AxisChartDataSet.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AxisChartDataSet.java 17 May 2003 16:58:10 -0000 1.1 --- AxisChartDataSet.java 1 Jul 2004 01:37:50 -0000 1.2 *************** *** 53,56 **** --- 53,57 ---- { private ChartType chartType; + private boolean plotAgainstRHS = false; *************** *** 78,81 **** --- 79,106 ---- + /****************************************************************************************** + * Constructor + * + * @param data the data sets to be displayed in the chart. + * @param plotAgainstRHS whether to plot the data set against the right hand Y Axis + * @param legendLabels if this is: NULL there will be no Legend. Otherwise, there must be an + * one to one mapping of labels to data sets. + * @param paints paints to use for the data sets. There must be an one to one mapping of + * labels to data sets. + * @param chartType constant defining how this data should be rendered + * @param chartTypeProperties properties Object specific to the type of chart you are rendering. + * @throws ChartDataException if data is not in correct form. + *******************************************************************************************/ + public AxisChartDataSet( double[][] data, boolean plotAgainstRHS, + String[] legendLabels, + Paint[] paints, + ChartType chartType, + ChartTypeProperties chartTypeProperties ) throws ChartDataException + { + super( data, legendLabels, paints, chartTypeProperties ); + this.chartType=chartType; + this.plotAgainstRHS = plotAgainstRHS; + } + /************************************************************************************************ * Performs a limited validation of data. This is static and not called by the rendering engine *************** *** 126,129 **** --- 151,165 ---- } + /****************************************************************************************** + * Returns whether the data set should be plotted against the rught hand Y axis + * + * @return plotAgainstRHS + * @see ChartType + *******************************************************************************************/ + public final boolean getPlotAgainstRHS() + { + return this.plotAgainstRHS; + } + /****************************************************************************************** |
From: Chris M. <ki...@us...> - 2004-07-01 01:36:24
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/axisChart/axis/scale In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7560/src/java/org/krysalis/jcharts/axisChart/axis/scale Modified Files: UserDefinedScaleCalculator.java Log Message: Dual Y axis changes Index: UserDefinedScaleCalculator.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/axisChart/axis/scale/UserDefinedScaleCalculator.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** UserDefinedScaleCalculator.java 17 May 2003 16:54:37 -0000 1.1 --- UserDefinedScaleCalculator.java 1 Jul 2004 01:36:16 -0000 1.2 *************** *** 90,94 **** super.setMinValue( super.round( this.userDefinedMinimum, powerOfTen ) ); ! super.setMaxValue( super.getMinValue() + ( super.increment * super.getNumberOfScaleItems() ) ); } --- 90,96 ---- super.setMinValue( super.round( this.userDefinedMinimum, powerOfTen ) ); ! // Take into account the tick on the 0 line ! super.setMaxValue( super.getMinValue() + ( super.increment * (super.getNumberOfScaleItems() - 1) ) ); ! // super.setMaxValue( super.getMinValue() + ( super.increment * super.getNumberOfScaleItems() ) ); } |
From: Chris M. <ki...@us...> - 2004-07-01 01:35:41
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/axisChart/axis/scale In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7474/src/java/org/krysalis/jcharts/axisChart/axis/scale Modified Files: AutomaticScaleCalculator.java Log Message: Dual Y axis changes Index: AutomaticScaleCalculator.java =================================================================== RCS file: /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/axisChart/axis/scale/AutomaticScaleCalculator.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AutomaticScaleCalculator.java 17 May 2003 16:54:36 -0000 1.1 --- AutomaticScaleCalculator.java 1 Jul 2004 01:35:31 -0000 1.2 *************** *** 78,87 **** { super.setMinValue( 0.0d ); ! super.setMaxValue( super.increment * super.getNumberOfScaleItems() ); } else { super.setMaxValue( 0.0d ); ! super.setMinValue( -( super.increment * super.getNumberOfScaleItems() ) ); } } --- 78,88 ---- { super.setMinValue( 0.0d ); ! // numberOfScaleItems is -1 to take into account 0 tick item ! super.setMaxValue( super.increment * (super.getNumberOfScaleItems() - 1) ); } else { super.setMaxValue( 0.0d ); ! super.setMinValue( -( super.increment * (super.getNumberOfScaleItems() - 1) ) ); } } *************** *** 109,113 **** //---axis starts at minValue, not zero! ! super.setMaxValue( super.getMinValue() + ( this.increment * super.getNumberOfScaleItems() ) ); } } --- 110,115 ---- //---axis starts at minValue, not zero! ! // super.setMaxValue( super.getMinValue() + ( this.increment * super.getNumberOfScaleItems() ) ); ! super.setMaxValue( super.getMinValue() + ( this.increment * (super.getNumberOfScaleItems() - 1) ) ); } } |