aivika-experiment-chart-4.2: Simulation experiments with charting for the Aivika library

CopyrightCopyright (c) 2012-2015, David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell98

Simulation.Aivika.Experiment.Chart.TimeSeriesView

Description

Tested with: GHC 7.10.1

The module defines TimeSeriesView that plots the time series charts.

Synopsis

Documentation

data TimeSeriesView Source

Defines the View that plots the time series charts.

Constructors

TimeSeriesView 

Fields

timeSeriesTitle :: String

This is a title used in HTML.

timeSeriesDescription :: String

This is a description used in HTML.

timeSeriesWidth :: Int

The width of the chart.

timeSeriesHeight :: Int

The height of the chart.

timeSeriesFileName :: ExperimentFilePath

It defines the file name with optional extension for each image to be saved. It may include special variables $TITLE, $RUN_INDEX and $RUN_COUNT.

An example is

  timeSeriesFileName = UniqueFilePath "$TITLE - $RUN_INDEX"
timeSeriesPredicate :: Event Bool

It specifies the predicate that defines when we plot data in the chart.

timeSeriesTransform :: ResultTransform

The transform applied to the results before receiving series.

timeSeriesLeftYSeries :: ResultTransform

It defines the series plotted basing on the left Y axis.

timeSeriesRightYSeries :: ResultTransform

It defines the series plotted basing on the right Y axis.

timeSeriesPlotTitle :: String

This is a title used in the chart when simulating a single run. It may include special variable $TITLE.

An example is

  timeSeriesPlotTitle = "$TITLE"
timeSeriesRunPlotTitle :: String

The run title for the chart. It is used when simulating multiple runs and it may include special variables $RUN_INDEX, $RUN_COUNT and $PLOT_TITLE.

An example is

  timeSeriesRunPlotTitle = "$PLOT_TITLE / Run $RUN_INDEX of $RUN_COUNT"
timeSeriesPlotLines :: [PlotLines Double Double -> PlotLines Double Double]

Probably, an infinite sequence of plot transformations based on which the plot is constructed for each series. Generally, it must not coincide with a sequence of labels as one label may denote a whole list or an array of data providers.

Here you can define a colour or style of the plot lines.

timeSeriesBottomAxis :: LayoutAxis Double -> LayoutAxis Double

A transformation of the bottom axis, after title time is added.

timeSeriesLayout :: LayoutLR Double Double Double -> LayoutLR Double Double Double

A transformation of the plot layout, where you can redefine the axes, for example.

defaultTimeSeriesView :: TimeSeriesView Source

The default time series view.