Chart-1.9.1: A library for generating 2D Charts and Plots

Copyright(c) Tim Docker 2010 2014
LicenseBSD-style (see chart/COPYRIGHT)
Safe HaskellNone
LanguageHaskell98

Graphics.Rendering.Chart.Axis.Time

Contents

Description

Calculate and render time axes

Synopsis

Documentation

type TimeSeq = UTCTime -> ([UTCTime], [UTCTime]) #

TimeSeq is a (potentially infinite) set of times. When passed a reference time, the function returns a a pair of lists. The first contains all times in the set less than the reference time in decreasing order. The second contains all times in the set greater than or equal to the reference time, in increasing order.

type TimeLabelFn = UTCTime -> String #

How to display a time

timeValueAxis #

Arguments

:: TimeValue t 
=> TimeSeq

Set the minor ticks, and the final range will be aligned to its elements.

-> TimeSeq

Set the labels and grid.

-> TimeLabelFn 
-> TimeLabelAlignment 
-> TimeSeq

Set the second line of labels.

-> TimeLabelFn

Format t for labels.

-> TimeLabelAlignment 
-> AxisFn t 

Create an AxisFn to for a time axis.

The values to be plotted against this axis can be created with doubleFromLocalTime.

Implementation detail: PlotValue constraint is needed to use vmap.

autoTimeValueAxis :: TimeValue t => AxisFn t #

Automatically choose a suitable time axis, based upon the time range of data. The values to be plotted against this axis can be created with doubleFromTimeValue.

days :: TimeSeq #

A TimeSeq for calendar days.

months :: TimeSeq #

A TimeSeq for calendar months.

years :: TimeSeq #

A TimeSeq for calendar years.

Orphan instances