DEFINITION MODULE Histograms;
(*******************************************************************
Module Histograms (Version 0.5)
Copyright (c) 1987-2006 by Andreas Fischlin and ETH Zurich.
Purpose Draws histograms.
Remarks --
Programming
o Design
Andreas Fischlin 20/12/1987
o Implementation
Andreas Fischlin 20/12/1987
ETH Zurich
Systems Ecology
CHN E 35.1
Universitaetstrasse 16
8092 Zurich
SWITZERLAND
URLs:
<mailto:RAMSES@env.ethz.ch>
<http://www.sysecol.ethz.ch>
<http://www.sysecol.ethz.ch/SimSoftware/RAMSES>
Last revision of definition: 23/04/1996 AF & DG
*******************************************************************)
FROM DMWindows IMPORT Window, RectArea;
FROM DMWindIO IMPORT Color, Pattern;
TYPE
Histogram;
HistoAct = PROCEDURE (Histogram);
PROCEDURE DefineHistogram(w: Window; VAR h: Histogram;
r: RectArea; fromClass,toClass: INTEGER;
xLabel: ARRAY OF CHAR;
maxFreqency: CARDINAL; freqNumbs: BOOLEAN;
barCol: Color; barPat: Pattern);
PROCEDURE SetYTickInterval( h: Histogram; interval: INTEGER );
PROCEDURE ClearHistogram(h: Histogram);
PROCEDURE DrawHistogram(h: Histogram);
PROCEDURE MidTopPoint(h: Histogram; class: INTEGER; f: CARDINAL;
VAR x,y: INTEGER); (* coordinates in middle of
top of bar for class and
frequency f *)
PROCEDURE PlotBar(h: Histogram; class: INTEGER; f: CARDINAL);
PROCEDURE SetPlotBarMode( h: Histogram; wipeOut : BOOLEAN );
PROCEDURE GetPlotBarMode( h: Histogram; VAR wipeOut, done : BOOLEAN );
PROCEDURE RemoveHistogram(VAR h: Histogram);
PROCEDURE DoForAllHistograms(p: HistoAct);
END Histograms.