AnyLogic
Expand
Font size
All Implemented Interfaces:
com.anylogic.engine.internal.Child, Locatable2D, AggregatableAnimationElement, HasLevel, LevelElement, SVGElement, java.io.Serializable, java.lang.Cloneable

public class TimeColorChart
extends Chart2D
The chart that displays a collection of data sets as a number of horizontal strips with color varying along the X (time) axis. The data set X (time) values must be non-decreasing. The time axis shows the data in the specified time window. The correspondence of data set value and a color is defined euther in Presentable by method getShapeChartColorFromDouble, or by the object ColorMap passed in the constructor. The thickness of strips can be controlled. The chart may have X (time) 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:
AnyLogic North America, LLC https://anylogic.com
See Also:
Serialized Form

Nested Class Summary

Nested Classes 
static class  TimeColorChart.ColorMap
Deprecated.
Modifier and Type Class Description

Nested classes/interfaces inherited from class com.anylogic.engine.analysis.Chart

Chart.Direction, Chart.GridPosition, Chart.InterpolationType, Chart.PointStyle, Chart.ScaleType, Chart.TimeWindowMovementType

Nested classes/interfaces inherited from class com.anylogic.engine.presentation.ShapeControl

ShapeControl.ValueType

Field Summary

Fields inherited from class com.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_AUTO_FROM_0, SCALE_FIXED, SHORT_DATE_PATTERN, SHORT_DATE_TIME_PATTERN, SHORT_TIME_PATTERN, SOUTH, WEST, WINDOW_MOVES_WITH_DATA, WINDOW_MOVES_WITH_TIME

Fields inherited from class com.anylogic.engine.presentation.ShapeControl

TYPE_DOUBLE, TYPE_INT, TYPE_STRING

Fields inherited from class com.anylogic.engine.presentation.Shape

UNKNOWN_NAME

Constructor Summary

Constructors 
TimeColorChart​(Presentable p, boolean ispublic, double x, double y, double width, double height, java.awt.Color fillColor, java.awt.Color lineColor, double picOffsetX, double picOffsetY, double picWidth, double picHeight, java.awt.Color picBackgoundColor, java.awt.Color picBorderColor, java.awt.Color legendTextColor, double legendSize, Chart.Direction legendPos, double timeWindow, Chart.TimeWindowMovementType timeWindowMovementType, java.lang.String dateFormatPattern, double relativeBarWidth, Chart.GridPosition gridPositionT, java.awt.Color gridLineColor, java.awt.Color gridTextColor, java.util.List<DataSet> dataSets, java.util.List<java.lang.String> titles, java.awt.Color defaultValueColor, ColorMapping[] colorMappings)
Creates a persistent TimeColorChart.
Constructor Description

Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods 
void addDataSet​(DataSet ds)
Adds a DataSet to the chart with default title "Data set".
void addDataSet​(DataSet ds, java.lang.String title)
Adds a DataSet to the chart.
java.awt.Color getColor​(int i)
This method always return null for TimeColorChart
ColorMapping getColorMapping​(int index)
Returns the color mapping - conditional expression the value to be checked against to determine the color.
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
int getColorMappingsCount()
Returns the number of color mappings - conditional expressions the value to be checked against to determine the color.
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
java.awt.Color getDefaultColor()
Returns the color to be used when all the value doesn't match any of colorMappings.
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
void postSVGShapeSpecificAttributes​(java.util.List<java.lang.String> att, java.util.List<java.lang.String> val, boolean publicOnly)
Posts general properties specific to a particular shape class.
void refresh()
Causes the chart to refresh its picture and legend based on the newest data values.
void restoreOwner​(java.lang.Object owner)
Deprecated.
void setColor​(int i, java.awt.Color c)
This method has no effect on TimeColorChart
void setIDEDrivenMode_xjal​(java.util.Date modelStartDate, long modelTimeUnits)
This method shouldn't be called by user
(is public due to technical reasons)
Modifier and Type Method Description

Methods inherited from class com.anylogic.engine.analysis.Chart

action, clone, copyToClipboard, executeUserAction, get, getCount, getJComponent, getSelectedItemIndices, getTitle, onSelectionChanged_xjal, remove, remove, removeAll, selectItem, setSelectedItemIndices, update, updateData

Methods inherited from class com.anylogic.engine.presentation.ShapeControl

contains, executeAction, getHeight, getPresentable, getWidth, isEnabled, randomPointInside, setEnabled, setHeight, setValueToDefault, setWidth

Methods inherited from class com.anylogic.engine.presentation.Shape

canHandleClick, findSVGElement, getDrawMode, getGroup, getLevel, getName, getRotation, getScaleX, getScaleY, getSVGId, getX, getY, isJava2DSwingPresentation, isPublic_xjal, isSVGPresentation, isVisible, onAggregatorVisibilityChanged, onClick, randomPointInside, removeSVGFromOwner, removeSVGImage, resetSVGState, setLevel, setPos, setPos, setPublic_xjal, setRotation, setScale, setScale, setScaleX, setScaleY, setVisible, setX, setY, updateDynamicProperties, updateDynamicPropertiesStructural, updateSVGProperties

Methods inherited from class java.lang.Object

equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Methods inherited from interface com.anylogic.engine.markup.AggregatableAnimationElement

initializeInternal, postInitialize

Constructor Detail

TimeColorChart

public TimeColorChart​(Presentable p,
                      boolean ispublic,
                      double x,
                      double y,
                      double width,
                      double height,
                      java.awt.Color fillColor,
                      java.awt.Color lineColor,
                      double picOffsetX,
                      double picOffsetY,
                      double picWidth,
                      double picHeight,
                      java.awt.Color picBackgoundColor,
                      java.awt.Color picBorderColor,
                      java.awt.Color legendTextColor,
                      double legendSize,
                      Chart.Direction legendPos,
                      double timeWindow,
                      Chart.TimeWindowMovementType timeWindowMovementType,
                      java.lang.String dateFormatPattern,
                      double relativeBarWidth,
                      Chart.GridPosition gridPositionT,
                      java.awt.Color gridLineColor,
                      java.awt.Color gridTextColor,
                      java.util.List<DataSet> dataSets,
                      java.util.List<java.lang.String> titles,
                      java.awt.Color defaultValueColor,
                      ColorMapping[] colorMappings)
Creates a persistent TimeColorChart. If the collection of DataSet objects is null, new empty collection is 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 background 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)
movingTimeWindow - if true, then time window will (as well as labels on Time axis) will move along with time, even when there is no new data
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
relativeBarWidth - the thickness of the color strips (1 - maximum, 0.5 - half, etc.)
gridPositionT - the position of the scale text labels on time (X) 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
defaultValueColor - color to be used when all the value doesn't match any of colorMappings
colorMappings - conditional expressions the value to be checked against to determine the color

Method Detail

addDataSet

public void addDataSet​(DataSet ds,
                       java.lang.String title)
Adds a DataSet to the chart.
Parameters:
ds - the data set to add
title - the data set title

addDataSet

public void addDataSet​(DataSet ds)
Adds a DataSet to the chart with default title "Data set".
Parameters:
ds - the data set to add

getColorMappingsCount

@AnyLogicInternalAPI
public int getColorMappingsCount()
Returns the number of color mappings - conditional expressions the value to be checked against to determine the color.
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.

getColorMapping

@AnyLogicInternalAPI
public ColorMapping getColorMapping​(int index)
Returns the color mapping - conditional expression the value to be checked against to determine the color.
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
Parameters:
index - index, from 0 to getColorMappingsCount() - 1

getDefaultColor

@AnyLogicInternalAPI
public java.awt.Color getDefaultColor()
Returns the color to be used when all the value doesn't match any of colorMappings.
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.

setColor

public void setColor​(int i,
                     java.awt.Color c)
This method has no effect on TimeColorChart
Overrides:
setColor in class Chart<DataSet>
Parameters:
i - index of the item
c - the new color of the item

getColor

public java.awt.Color getColor​(int i)
This method always return null for TimeColorChart
Specified by:
getColor in class Chart<DataSet>
Parameters:
i - index of the item
Returns:
null

refresh

public void refresh()
Causes the chart to refresh its picture and legend based on the newest data values.
Overrides:
refresh in class Chart<DataSet>

setIDEDrivenMode_xjal

@AnyLogicInternalAPI
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

@AnyLogicInternalCodegenAPI
@Deprecated
public void restoreOwner​(java.lang.Object owner)
Deprecated.
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.anylogic.engine.internal.Child
Overrides:
restoreOwner in class ShapeControl
Parameters:
owner - owner of this object, usually Agent, Experiment or ShapeGroup

postSVGShapeSpecificAttributes

public void postSVGShapeSpecificAttributes​(java.util.List<java.lang.String> att,
                                           java.util.List<java.lang.String> val,
                                           boolean publicOnly)
Description copied from class: Shape
Posts general properties specific to a particular shape class. Is triggered by SVG_DIRTY_SHAPE flag. Made public for occasional posting of additional SVG properties from outside engine (e.g. from libraries)
Overrides:
postSVGShapeSpecificAttributes in class Chart2D
Parameters:
att - attribute names
val - attribute values
publicOnly - TODO
How can we improve this article?