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:
- the chart title
- the chart title font
- the legend position
- the legend label colors
- the upper range of the chart
- the lower range of the chart
- the number of decimals used for the range values
- the number of decimals used for the value labels
- the bar alignment (vertical or horizontal)
- the color of each bar can be set
- the font used for the value and sample labels
- the chart background color
- the chart foreground color
- target value lines can be defined
You can turn on or
off the following features:
- 2D or 3D display
- the chart title
- the chart legend
- the bar value labels
- the bar labels
- the value lines
- single or multicolor
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:
- the chart title
- the chart title font
- the legend position
- the legend label colors
- the legend label fonts
- the chart background color
- the chart foreground color
- the pie angle (in 3D mode)
- the pie depth (in 3D mode)
- the number of decimals used for the sample values
- the number of decimals used for the percentage
values
- the color of each pie segment
You can turn on
or off the following feature:
- 2D or 3D display
- the chart title
- the legend
- the sample value labels
- the sample percentage labels
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:
- the chart title
- the chart title font
- the chart legend position
- the legend label color
- the chart background color
- the chart foreground color
- the upper range of the chart.
- the lower range of the chart.
- the number of decimals used for the range value labels
- the number of series in the chart
- the label for each series
- the color of each series
- the sample labels
- target value lines can be defined
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]