EasyCharts(tm)
The EasyCharts components are easy-to-use and flexible java charting components that can either be used in you applications or directly in your dynamic web pages, for example with ASP pages.

EasyCharts supports JDK 1.0.2, JDK 1.1, and JDK 1.2, including Swing.

Check the API reference.


Version
Call the following command to print out the current version information of the EasyCharts installed:

java com.objectplanet.chart.Chart

If you downloaded the evaluation version of EasyCharts, the word ObjectPlanet will be displayed in the top left corner of every chart, otherwise the evaluation version works exactly like the commercial version. The commercial version can be purchased from the objectplanet web site at http://objectplanet.com/EasyCharts.


Files
readme.html             - this file
license_agreement.txt   - the EasyCharts license agreement
chart.jar               - the chart class files for JDK 1.1 andd 1.2
chartAll.jar            - the chart class files including JavaBBeans and demos
chart102.jar            - chart class files for JDK 1.0.2
chartapplet.html        - contains example source for the chart applets
demo.bat                - starts the chart demo applications (JJRE needed)
BarChartDemo.java       - source code for the bar chart demo
PieChartDemo.java       - source code for the pie chart demo
LineChartDemo.java      - source code for the line chart demo
api/                    - the Java API documentation
com/                    - precompiled classes for the JDK 1.0.22 version
source/                 - the source code if you purchased the source license


Installation
To install the package, unzip the distribution zip file and it will create a directory named EasyCharts\. To run the demo.bat file, you need to have the Java Runtime Environment (JRE) from Sun Microsystems installed on you computer. The charts applets are only compatible with JDK 1.1, and you need a JDK 1.1 capable browser such as Netscape 4.0.6 (or higher) or Internet Explorer 4.0 (or higher).


Use in applications
To use the charts in your applications, set your classpath to point to the charts.jar file, and simply import the com.objectplanet.chart package in your java code.


Use in html pages

For browsers that support JDK 1.1 or later:

1) Place the charts.jar file in the directory where the html pages for the applets will be.
2) Add the following or similar tag to the html code:

<applet
code="com.objectplanet.chart.BarChartApplet"
archive="chart.jar" width=300 height=200>
<param name=sampleCount value=5>
<param name=sampleValues value="10, 30, 50, 70, 90">
</applet>

This will display a bar chart with 5 samples and the values 10, 30, 50, 70, and 90 in the page.

For browsers that support JDK 1.0.2:

1) Copy the entire com\ directory to the directory where the html pages for the applets will be.
2) Add the following or similar tag to the html code:

<applet
code="com.objectplanet.chart102.BarChartApplet"
<param name=sampleCount value=5>
<param name=sampleValues value="10, 30, 50, 70, 90">
</applet>

This will display a bar chart with 5 samples and the values 10, 30, 50, 70, and 90 in the page.


Use as JavaBeanstm
To use the charts in a JavaBeans capable IDE, simply import the chartsAll.jar file into the IDE.


BarChart
The bar chart component displays a set of values as horizontal or vertical bars, either in 2D or 3D mode. The bar chart component can have the following features set:

You can turn on or off the following features:


PieChart
The pie chart displays a set of values as segments in a pie. Each sample value in the chart is shown relative to the whole pie. The pie chart can have the following features set:

You can turn on or off the following feature:


LineChart
The line chart displays several sets of values as a line for each value set. The user can adjust the range of the chart by moving the range adjuster of the chart. The line chart component can have the following features set:

You can turn on or off the following features:
  • the chart title
  • the legend
  • the value lines
  • the sample labels
  • the range adjuster


Changes

Changes from version 1.4 to 1.5

  • Support for JDK 1.0.2 was added in addition to 1.1 and 1.2
  • The package com.objectplanet.chart102 includes charts for JDK 1.0.2
  • ChartSample: the method formatNumber(double value, int decimals) was added for formatting floating point numbers (used instead of the NumberFormat class only found in JDK 1.1)
  • Numbers are now formatted with three and three digits with space between them (European style) instead of commas (American style).
  • Chart: Fixed a bug in the getFloatMaxValue() and getFloatMinValue() that caused them to return Long.MIN_VALUE and Long.MAX_VALUE if no samples were present, they now return 0 if no samples are found.
  • LineChart: Same fix as above.
  • LineChart: fixed a bug in the setSampleColors(Color[] colors) that always caused the third color be overwritten.

Changes from version 1.3.3 to 1.4

  • You can now add value lines at any value in BarChart and LineChart
  • BarChart/LineChart: setTargetValueLine(String id, double value, Color color, int style) was added, which enables you to define a value line with the specified ID, value color and style.
  • BarChart/LineChart: public double getTargetValueLine(String id) eas added.
  • BarChart/LineChart: adding TARGET_LINE_NO_LABEL, TARGET_LINE_ID_LABEL, TARGET_LINE_VALUE_LABEL, TARGET_LINE_ID_AND_VALUE_LABEL as styles for the target value lines.
  • BarChart/LineChart: public int getValuePosition(double value) was added, which gets the position in the chart for a given value.
  • BarChart/LineChart: public void setRangeLabelsOn(boolean on) was added, which enables you to turn on or off the range labels of the chart.
  • BarChart/LineChart: public boolean isRangeLabelsOn() was added.
  • You can now append a value to the BarChart or LineChart.
  • BarChart: an appendSample(double value, boolean makeSpace) method was added.
  • LineChart: an appendSample(int serie, double value, boolean makeSpace) method was added.
  • LineChart now stops drawing a line if the current number of values in a series is less than the total number of samples for the chart.
  • LineChart.getFloatMaxValue(): Fixed a bug that prevented getting maximum values of less than 0.
  • LineChart.getFloatMinValue(): Fixed a bug that prevented getting minimum values larger than 0.
  • LineChart: A selected line is now drawn much more clearly.
  • Chart.setSampleValues(double[] values) now keeps the original number of samples in the chart, instead of setting the number of samples to the number of values passed in.
  • Chart.getFloatMaxValue(): Fixed a bug that prevented getting maximum values of less than 0.
  • Chart.getMaxValue(): Fixed a bug that prevented getting maximum values of less than 0.
  • Chart: fixed a bug in the setSampleCount(..) method, that removed the last value in the original samples.
  • PieChart: void setSampleLabelsOn(boolean) was added, which displays the sample labels when the mouse pointer is above a pie segment.
  • PieChart: boolean isSampleLabelsOn() was added.
  • PieChartApplet: a sampleLabelsOn parameter tag was added.

Changes from version 1.3.2 to 1.3.3

  • BarChart: Rectangle getGraphBounds() was made public so one can get the bounds of the chart itself.
  • LineChart: Rectangle getGraphBounds() was made public so one can get the bounds of the chart itself.
  • PieChart: a Rectangle getGraphBounds() was added.
  • LineChart: A bug was fixed in the setSampleCount() and setSampleSeries() methods that caused a runtime error while setting the samples after a call to these methods.

Changes from version 1.3.1 to 1.3.2

  • LineChart: void setSeriesLabels(String[] labels) was added.
  • LineChart: String[] getSeriesLabels() was added.
  • LineChart: String getSeriesLabel(int serie) was added.

Changes from version 1.3 to 1.3.1

  • Methods were added to LineChart to set/get series samples.
  • LineChart: ChartSample[] getSamples(int serie) was added.
  • LineChart: ChartSample getSample(int serie, int index) was added.
  • LineChart: long[] getSampleValues(int serie) was added.
  • LineChart: double[] getFloatSampleValues(int serie) was added.
  • LineChart: long getSampleValue(int serie, int index) was added.
  • LineChart: double getFloatSampleValue(int serie, int index) was added.
  • Version information was added to the charts.
  • Chart: public static String getVersion() was added.
  • Chart: java com.objectplanet.chart.Chart will display the version number of the charts you have installed.

Changes from version 1.2 to 1.3

  • Negative number support was added for the BarChart and LineChart:
  • A BarChart(int count, double range, double lowerRange) constructor was added.
  • BarChart: a setLowerRange(double range) method was added.
  • BarChart: a long getLowerRange() method was added.
  • BarChart: a double getFloatLowerRange() method was added.
  • BarChart: a setLowerRelativeRange(double range) method was added.
  • BarChartApplet: a lowerRange parameter tag was added.
  • A LineChart(int seriesCount, int sampleCount, double range, double lowerRange) constructor was added.
  • LineChart: a setLowerRange(double range) method was added.
  • LineChart: a long getLowerRange() method was added.
  • LineChart: a double getFloatLowerRange() method was added.
  • LineChart: a setLowerRelativeRange(double range) method was added.
  • LineChartApplet: a lowerRange param tag was added.
  • Chart: a long getMinValue() method was added.
  • Chart: a double getFloatMinValue() method was added.
  • Misc. changes
  • BarChart: setBarAlignment() now throws an IllegalArgumentException if an illegal alignment parameter is passed in.
  • Chart: setLegendPosition() now throws an IllegalArgumentException if an illegal position parameter is passed in.

Changes from version 1.1 to 1.2

  • Floating point number support was added:
  • Chart: The setSample(..) methods now take a double instead of a long for the sample value.
  • Chart: A setSampleValues(double[] values) method was added.
  • Chart: A double[] getFloatSampleValues() method was added.
  • Chart: A double getFloatSampleValue(int index) method was added.
  • Chart: A setSampleDecimalCount(int count) and getSampleDecimalCount() method were added.
  • Chart: A double getFloatMaxValue() method was added.
  • BarChart:The setRange(long) method changed to setRange(double)
  • BarChart:The old setRange(double) was renamed to setRelativeRange(double)
  • BarChart:A double getFloatRange() method was added.
  • BarChart:A setRangeDecimalCount(int count) method was added.
  • BarChart:A int getRangeDecimalCount() method was added.
  • LineChart:A setSampleValues(int index, double[] values) method was added.
  • LineChart:The setRange(long) method changed to setRange(double).
  • LineChart:The old setRange(double) was renamed to setRelativeRange(double)
  • LineChart:A double getFloatRange() method was added.
  • LineChart:A setRangeDecimalCount(int count) method was added.
  • LineChart:A int getRangeDecimalCount() method was added.
  • PieChart:A setPercentDecimalCount(int count) method was added.
  • PieChart:A int getPercentDecimalCount() method was added.
  • BarChartApplet: a rangeDecimalCount param tag was added.
  • LineChartApplet: a rangeDecimalCount param tag was added.
  • PieChartApplet: a percentDecimalCount param tag was added.
  • Configurable sample colors were added:
  • Chart: A setSampleColors(Color[] colors) method was added.
  • Chart: A Color[] getSampleColors() method was added.
  • Chart: A setSampleColor(int index, Color color) was added.
  • Chart: The Color getSampleColor(int index) was made public.
  • BarChart:The setBarColor() and getBarColor() methods were made deprecated, setSampleColor(0, color) and getSampleColor(0) should be used instead.
  • LineChart:The setLineColor() and getLineColor() methods were made deprecated, setSampleColor(0, color) and getSampleColor(0) should be used instead.
  • ChartApplet: a sampleColors param tag was added to the chart applets.
  • LineChartApplet: the lineColor param tag was removed, use the sampleColors param tag instead.
  • Misc. changes:
  • Chart: The charts were made lightweight, which made it usable with Swing.
  • Chart: The charts does no longer use double buffering.
  • A NonFlickerPanel class was added which should be used to avoid flickering when updating the charts frequently.
  • Chart: Printing was fixed in applications.
  • Chart: Fixing a bug with the legend placement when placed on top.
  • Chart: The assertion windows were removed and IllegalArgumentException is used instead when an illegal argument is passed to a method.
  • BarChart: Fixing some bugs in the sizing and placement of the barchart when different features are turned on and off.
  • LineChart: The lines were made 1 pixel wide instead of 2 when unselected, and 2 pixels wide instead of 1 when selected.
  • LineChart: Fixed a bug that caused the lines to be drawn over other lightweight components such as in Swing.
  • PieChart: A double getPercentValue(int index) method was added.

Changes from version 1.0 to 1.1

  • The BarChartApplet and LineChartApplet now adjust their range to the maximum value by default, if no explisit range is set.
  • A setTitleFont() and getTitleFont() method were added.


Contact
If you have any questions, comments, bug reports, or feature enhancement requests send an email to [email protected] or call (+47) 916 36 159.



Copyright (C) 1998, 1999
ObjectPlanet, Inc.
(+47) 916 36 159
[email protected]
Hosted by www.Geocities.ws

1