.-
help for ^barplot^
.-

Bar plot
--------

    ^barplot^ yvarlist xvar [^if^ exp] [^in^ range]
    [ ^, w^idth^(^string^) b^ase^(^string^) m^onths ^join^
    graph_options ]

Description
-----------

^barplot^ produces a plot of the variables in yvarlist against xvar.
Each variable in yvarlist is plotted as a series of unshaded bars rising
above or falling below one or more base lines. The height of each bar is
given by the y variable, the width via the width option, the base via
the base option and the horizontal centre of each bar by xvar.

^barplot^ could be used, for example, to

    plot monthly totals or other time series as a series of touching
    bars, positive and negative values shown upwards and downwards
    (rainfall/evaporation, profit/loss, income/expenditure)

    show histograms, especially those with more than 50 bins (classes)
    or unequal bin widths (class intervals), or with unshaded bars

    show the difference between two histograms as a series of bars that
    may be positive or negative

    show J.W. Tukey's rootograms, with the square root of frequencies on
    the y axis.

Note especially in the case of histograms or rootograms that the
frequencies must be calculated beforehand.

Through the ^width()^ option, ^barplot^ could be used to produce
overlapping or underlapping bars, if desired for some reason.


Options
-------

^width(^string^)^ specifies how the widths of the bars are determined.
    ^width(^widthvar^)^ specifies that they are given by widthvar.
    ^width(^#^)^ specifies that they are constant and equal to #.
    The default is ^width(1)^.

^base(^string^)^ specifies how the bases of the bars are determined.
    ^base(^basevar^)^ specifies that they are given by basevar.
    ^base(^#^)^ specifies that they are constant and equal to #.
    The default is ^base(0)^.

^months^ without ^xlabel( )^ automatically produces
    ^xla(1,2,3,4,5,6,7,8,9,10,12)^.

^join^ specifies that bars that do not touch will be joined, i.e.
    connected by fragments of a baseline. Separate bars usually look
    better on histograms containing gaps (bins with zero frequency).
    Joined bars often look better with time series plots.

graph_options are options allowed with ^graph, twoway^, other than
    ^symbol^ and ^connect^, which are set to ^i^ and ^L^ for each y
    variable, and ^xlabel^ by itself. Note that these options do not
    include ^shading^.


Examples
--------

        . ^barplot pop age^
        . ^barplot rain month, mon^
        . ^barplot males females age^

    Histogram from data:

        . ^genfreq r if r > 0, w(1) b(Br) f(Fr)^
        . ^barplot Fr Br, w(1)^

    OR  . ^histplot r if r > 0, w(1)^

    Histogram from data, discrete variables:

        . ^egen freq = count(rep78), by(rep78)^
    OR  . ^genfreq rep78, fg(freq)^

        . ^barplot freq rep78, w(0.5) yla xla(1,2,3,4,5)^

    Histogram with unequal bin widths (Snedecor and Cochran, 1989,
    p.19):

        . ^input centre width freq^
        . ^112.5 25 38^
        . ^137.5 25 27^
        . ^162.5 25 15^
        . ^187.5 25 11^
        . ^250 100 4^
        . ^350 100 4^
        . ^450 100 1.8^
        . ^550 100 2^
        . ^700 200 1.2^
        . ^900 200 0.2^
        . ^barplot freq centre, w(width) l2(Frequency per 25000)^
            ^b2(Population in 000) yla^

    Superimposed histograms for different groups:

        . ^genfreq length, w(5) bg(Blength) fg(Flength) by(foreign)^
        . ^gen Flengthf = Flength if foreign^
        . ^gen Flengthd = Flength if !foreign^
        . ^barplot Flengthf Flengthd Blength, w(5)^

    Normal and inverted histograms for different groups:
        . ^gen nFlf = -Flength if foreign^
        . ^barplot nFlf Flengthd Blength, w(5)^

    Separate histograms for different groups:

        same colour:
        . ^barplot Flength Blength, w(5) by(foreign)^

        different colours:
        . ^barplot Flengthf Flengthd Blength, w(5) by(foreign)^

    Superimposed histograms for different variables:

        . ^genfreq n, w(0.5) bg(Bn) fg(Fn)^
        . ^genfreq x, w(0.5) bg(Bx) fg(Fx)^
        . ^stack Bx Fx Bn Fn, into(B F) wide clear^
        . ^barplot Fx Fn B, w(0.5)^

    Separate histograms for different variables:
        . ^barplot Fx Fn B, w(0.5) by(_stack)^


Author
------

         Nicholas J. Cox, University of Durham, U.K.
         n.j.cox@@durham.ac.uk


Also see
--------

On-line: help for @graph@, @spikeplt@ (if installed), @genfreq@ (if
         installed), @histplot@ (if installed)

