com.xj.anylogic.engine.analysis
Class TimeStackChart

java.lang.Object
  extended by com.xj.anylogic.engine.presentation.Shape
      extended by com.xj.anylogic.engine.presentation.ShapeControl
          extended by com.xj.anylogic.engine.analysis.Chart
              extended by com.xj.anylogic.engine.analysis.Chart2D
                  extended by com.xj.anylogic.engine.analysis.TimeStackChart
All Implemented Interfaces:
com.xj.anylogic.engine.internal.Child, Locatable2D, java.awt.event.ActionListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener

public class TimeStackChart
extends Chart2D

The chart that displays a collection of data sets in the form of a timed stack, i.e. a each data set is shown as a horizontal strip with height proportional to the fraction of its value in the total of all data sets at each time moment. The data set X (time) values must be non-decreasing. The time axis shows the data in the specified time window. A color is associated with each data set. Data set Y values must be non-negative. The stack may be scaled to 100%, SCALE_100_PERCENT, in which case it always occupies the full picture height), SCALE_AUTO, when stack is fitted into the best grid, or SCALE_FIXED, when the user specifies the maximum total. The chart may have scale text labels and a grid.

Chart may display date labels on the time axis (model date instead of model time). To turn on this mode please provide not null dateFormatPattern using one of available constants (DEFAULT_TIME_PATTERN, DEFAULT_DATE_PATTERN or DEFAULT_DATE_TIME_PATTERN) or custom date/time format pattern

Author:
XJ Technologies Company Ltd. www.anylogic.com
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.xj.anylogic.engine.analysis.Chart
Chart.Properties
 
Field Summary
 
Fields inherited from class com.xj.anylogic.engine.analysis.Chart
DEFAULT_DATE_PATTERN, DEFAULT_DATE_TIME_PATTERN, DEFAULT_TIME_PATTERN, EAST, GRID_DEFAULT, GRID_NONE, GRID_OPPOSITE, INTERPOLATION_LINEAR, INTERPOLATION_STEP, NONE, NORTH, POINT_CIRCLE, POINT_NONE, POINT_SQUARE, POINT_TRIANGLE, SCALE_100_PERCENT, SCALE_AUTO, SCALE_FIXED, SOUTH, WEST
 
Fields inherited from class com.xj.anylogic.engine.presentation.ShapeControl
TYPE_DOUBLE, TYPE_INT, TYPE_STRING
 
Fields inherited from class com.xj.anylogic.engine.presentation.Shape
UNKNOWN_NAME
 
Constructor Summary
TimeStackChart(Presentable p, boolean ispublic, int x, int y, int width, int height, java.awt.Color fillColor, java.awt.Color lineColor, int picOffsetX, int picOffsetY, int picWidth, int picHeight, java.awt.Color picBackgoundColor, java.awt.Color picBorderColor, java.awt.Color legendTextColor, int legendSize, int legendPos, double timeWindow, java.lang.String dateFormatPattern, int scaleTypeY, double maximumY, int gridPositionT, int gridPositionY, java.awt.Color gridLineColor, java.awt.Color gridTextColor, java.util.List<DataSet> dataSets, java.util.List<java.lang.String> titles, java.util.List<java.awt.Color> colors)
          Creates a persistent TimeStackChart.
TimeStackChart(Presentable p, int id, int index)
          Creates a non-persistent TimeStackChart.
 
Method Summary
 void addDataSet(DataSet ds)
          Adds a DataSet to the chart with default title "Data set" and defalt color royalBlue.
 void addDataSet(DataSet ds, java.lang.String title, java.awt.Color color)
          Adds a DataSet to the chart with the specified title and color.
 java.lang.String copyToClipboard()
          Copies all chart data to the system clipboard in the form of a tab-separated table with linear interpolation of values where needed.
 java.awt.Color getColor(int i)
          Returns the color of the chart item (DataSet) with the given index.
 void refresh()
          Causes the chart to refresh its picture and legend based on the newest data values.
 void restoreOwner(java.lang.Object owner)
          This method normally should not be called by user
This method restores owner of this object
The method is used in snapshot saving/loading
 void setFixedVerticalScale(double maximum)
          Sets fixed scale for vertical axis of chart
 void setIDEDrivenMode_xjal(java.util.Date modelStartDate, long modelTimeUnits)
          This method shouldn't be called by user
(is public due to technical reasons)
 
Methods inherited from class com.xj.anylogic.engine.analysis.Chart
action, actionPerformed, clone, get, getCount, getJComponent, getPopupMenu, getSelectedItemIndices, getTitle, onItemRemoved, onSelectionChanged, remove, remove, removeAll, selectItem, setSelectedItemIndices, update, updateData
 
Methods inherited from class com.xj.anylogic.engine.presentation.ShapeControl
contains, draw, getHeight, getPresentable, getWidth, isEnabled, onClickAt, setEnabled, setHeight, setValueToDefault, setWidth
 
Methods inherited from class com.xj.anylogic.engine.presentation.Shape
canHandleClick, getGroup, getName, getRotation, getScaleX, getScaleY, getX, getY, isVisible, onClick, setPos, setRotation, setScale, setScale, setScaleX, setScaleY, setVisible, setX, setY
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TimeStackChart

public TimeStackChart(Presentable p,
                      boolean ispublic,
                      int x,
                      int y,
                      int width,
                      int height,
                      java.awt.Color fillColor,
                      java.awt.Color lineColor,
                      int picOffsetX,
                      int picOffsetY,
                      int picWidth,
                      int picHeight,
                      java.awt.Color picBackgoundColor,
                      java.awt.Color picBorderColor,
                      java.awt.Color legendTextColor,
                      int legendSize,
                      int legendPos,
                      double timeWindow,
                      java.lang.String dateFormatPattern,
                      int scaleTypeY,
                      double maximumY,
                      int gridPositionT,
                      int gridPositionY,
                      java.awt.Color gridLineColor,
                      java.awt.Color gridTextColor,
                      java.util.List<DataSet> dataSets,
                      java.util.List<java.lang.String> titles,
                      java.util.List<java.awt.Color> colors)
Creates a persistent TimeStackChart. If the collection of DataSet objects and collection of their colors are null, new empty collections are created.

Parameters:
p - the presentable object owning this chart
ispublic - if true, the chart is visible on container's presentation
x - the x coordinate of the chart
y - the y coordinate of the chart
width - the width of the whole chart
height - the height of the whole chart
fillColor - the backgroud color of the whole chart
lineColor - the line border color of the whole chart
picOffsetX - the x offset of the picture from the top left corner of the picture area
picOffsetY - the y offset of the picture from the top left corner of the picture area
picWidth - the width of the picture
picHeight - the height of the picture
picBackgoundColor - the background color of the picture, null for none (transparent)
picBorderColor - the border color of the picture, null for no border
legendTextColor - the color of the legend text
legendSize - the size of the legend area: width if legendPos is EAST or WEST, height if NORTH or SOUTH
legendPos - the legend position (NONE, SOUTH, NORTH, EAST, WEST)
timeWindow - the time window to be displayed (the range of X axis)
dateFormatPattern - if not null, dates are shown on X axis (using this string as date/time format pattern), otherwise - model time units are shown on X axis
scaleTypeY - the scale type for Y axis (SCALE_100_PERCENT, SCALE_AUTO or SCALE_FIXED)
maximumY - the maximum scale value for Y axis (for SCALE_FIXED only)
gridPositionT - the position of the scale text labels on time (X) axis (GRID_NONE for no none, GRID_DEFAULT or GRID_OPPOSITE)
gridPositionY - the position of the scale text labels on Y axis (GRID_NONE for no none, GRID_DEFAULT or GRID_OPPOSITE)
gridLineColor - the color of grid lines, which then becomes semitransparent, null for no lines
gridTextColor - the color of scale text labels, null for no text labels
dataSets - the collection of data sets to be displayed, or null
titles - the collection of data set titles, or null
colors - the collection of data set colors, or null

TimeStackChart

public TimeStackChart(Presentable p,
                      int id,
                      int index)
Creates a non-persistent TimeStackChart.

Parameters:
p - the Presentable object owning this chart
id - the id of the chart
index - the index of the chart (for replicated charts)
Method Detail

addDataSet

public void addDataSet(DataSet ds,
                       java.lang.String title,
                       java.awt.Color color)
Adds a DataSet to the chart with the specified title and color.

Parameters:
ds - the data set to add
title - the data set title
color - the color of the data set

addDataSet

public void addDataSet(DataSet ds)
Adds a DataSet to the chart with default title "Data set" and defalt color royalBlue.

Parameters:
ds - the data set to add

setFixedVerticalScale

public void setFixedVerticalScale(double maximum)
Sets fixed scale for vertical axis of chart

Parameters:
maximum - maximum of chart axis scale

getColor

public java.awt.Color getColor(int i)
Returns the color of the chart item (DataSet) with the given index.

Parameters:
i - index of the item
Returns:
the color of the chart item with the given index

refresh

public void refresh()
Causes the chart to refresh its picture and legend based on the newest data values.

Overrides:
refresh in class Chart

copyToClipboard

public java.lang.String copyToClipboard()
Copies all chart data to the system clipboard in the form of a tab-separated table with linear interpolation of values where needed. The table is limited to 1000 values.

Overrides:
copyToClipboard in class Chart
Returns:
the text representation of all chart data

setIDEDrivenMode_xjal

public void setIDEDrivenMode_xjal(java.util.Date modelStartDate,
                                  long modelTimeUnits)
This method shouldn't be called by user
(is public due to technical reasons)


restoreOwner

public void restoreOwner(java.lang.Object owner)
Description copied from class: Shape
This method normally should not be called by user
This method restores owner of this object
The method is used in snapshot saving/loading

Specified by:
restoreOwner in interface com.xj.anylogic.engine.internal.Child
Overrides:
restoreOwner in class ShapeControl
Parameters:
owner - owner of this object, usually ActiveObject, Experiment or ShapeGroup


Copyright © 1991-2008 XJ Technlogies. All Rights Reserved.