The following example is a simple Range Indicator Chart Report definition in a PIN file that creates the above chart based on the sample dataset.
/* * Range Indicator Chart Report */ String[] cls = new String[] {"Conif", "Decid"}; String[] columns = new String[] {"feature.Yield.managed.Conif", "feature.Yield.managed.Decid"}; double[][][][] rangeData = new double[2][2][][]; rangeData[0][0] = new double[][] {{0,200}, {6000000,6000000}}; rangeData[0][1] = new double[][] {{0,200}, {14000000,14000000}}; rangeData[1][0] = new double[][] {{0,200}, {300000,300000}}; rangeData[1][1] = new double[][] {{0,200}, {700000,700000}}; reportWriter.addReport(new RangeIndicatorChartReport("range", "Growing stock range", control.getTargetTable(), "m3", "Species type", "Simulation range", "CURRENT", "TARGET", columns, cls, rangeData, false, ""));
In this particular example, minimum and maximum benchmark values
are passed to the constructor via
rangeData
. Mimimum and maximum values are
denoted by a "0" or "1" in the first two brackets. The ranges
are static across the planning horizon (0 - 200 years).
The Range Indicator Chart report was added to
the main report folder with the filename
"range". NO file extension was specified here
as the Report Writer will automatically create two separate
files: ".html", and ".png". The title of
the report, "Growing stock range" will appear at the top of the
HTML and PNG sub-reports, as well as in the Index Report, and the directory
tree. The units
"m3" will appear on
the Y-axis of the PNG bar chart. The x-axis will be labeled with
"Species Type" and the actual value achieved in the
this scenario, which is illustrated by the line on the graph,
will be labeled with "Simulation range".
As the last line was labeled as "false", the x-axis is represented by periods, not years.All planning periods were represented in this report, along with the initial conditions.