|No-spaces|

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

Plots grayshaded, colored, or textured land-masses [or
water-masses] on maps and [optionally] draws coastlines, rivers, and
political boundaries. Alternatively, it can (1) issue clip
paths that will contain all land or all water areas, or
(2) dump the data to an ASCII table. The data files come
in 5 different resolutions: (**f**)ull, (**h**)igh, (**i**)ntermediate,
(**l**)ow, and (**c**)rude. The full resolution files amount to more
than 55 Mb of data and provide great detail; for maps of larger
geographical extent it is more economical to use one of the other
resolutions. If the user selects to paint the land-areas and does not
specify fill of water-areas then the latter will be transparent (i.e.,
earlier graphics drawn in those areas will not be overwritten).
Likewise, if the water-areas are painted and no land fill is set then
the land-areas will be transparent. A map projection must be supplied.

Required Arguments
------------------

.. _-J:

.. |Add_-J| unicode:: 0x20 .. just an invisible code
.. include:: explain_-J.rst_

.. _-R:

.. |Add_-Rgeo| unicode:: 0x20 .. just an invisible code
.. include:: explain_-Rgeo.rst_

.. |Add_-Rz| unicode:: 0x20 .. just an invisible code
.. include:: explain_-Rz.rst_

Optional Arguments
------------------

.. _-A:

.. |Add_-A| unicode:: 0x20 .. just an invisible code
.. include:: explain_-A.rst_

.. _-B:

.. include:: explain_-B.rst_

.. _-C:

**-C**\ *fill*\ [**+l**\|\ **+r**] :ref:`(more ...) <-Gfill_attrib>`
    Set the shade, color, or pattern for lakes and river-lakes [Default
    is the fill chosen for "wet" areas (**-S**)]. Optionally, specify
    separate fills by appending **+l** for lakes or **+r** for
    river-lakes, repeating the **-C** option as needed.

.. _-D:

**-D**\ *resolution*\ [**+f**]
    Select the resolution of the data set to use ((**f**)ull,
    (**h**)igh, (**i**)ntermediate, (**l**)ow, and (**c**)rude). The
    resolution drops off by 80% between data sets.
    Append **+f** to automatically select a lower resolution should the one
    requested not be available [abort if not found].
    Alternatively, choose (**a**)uto to automatically select the best
    resolution given the chosen map scale. [Default is **l** in classic mode
    and **a** in modern mode].

.. _-E:

**-E**\ *code1,code2,...*\ [**+l**\|\ **L**][**+g**\ *fill*][**+p**\ *pen*][**+z**]
    Select painting or dumping country polygons from the Digital Chart of the World.
    This is another dataset independent of GSHHG and hence the **-A** and **-D** options do not apply.
    Append one or more comma-separated countries using the
    `2-character ISO 3166-1 alpha-2 convention <https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2>`_.
    To select a state of a country
    (if available), append .state, e.g, US.TX for Texas.  To specify a
    whole continent, prepend = to any of the continent codes AF (Africa),
    AN (Antarctica), AS (Asia), EU (Europe), OC (Oceania),
    NA (North America), or SA (South America).  Append **+l** to
    just list the countries and their codes [no data extraction or plotting takes place].
    Use **+L** to see states/territories for Argentina, Australia, Brazil, Canada, China, India, Russia and the US.
    Finally, you can append **+l**\|\ **+L** to **-E**\ =*continent* to only list countries in that continent;
    repeat if more than one continent is requested.
    Append **+p**\ *pen* to draw polygon outlines [no outline] and
    **+g**\ *fill* to fill them [no fill].  One of **+p**\|\ **g** must be
    specified unless **-M** is in effect, in which case only one **-E** option can be given;
    append **+z** to place the country code in the segment headers via **-Z**\ *code* settings.
    Otherwise, you may repeat **-E** to give different groups of items their own pen/fill settings.
    If neither **-J** nor **-M** are set then we just print the **-R**\ *wesn* string.

.. _-F:

**-F**\ [**l**\|\ **t**][**+c**\ *clearances*][**+g**\ *fill*][**+i**\ [[*gap*/]\ *pen*]][**+p**\ [*pen*]][**+r**\ [*radius*]][**+s**\ [[*dx*/*dy*/][*shade*]]]
    Without further options, draws a rectangular border around the map scale or rose using
    :term:`MAP_FRAME_PEN`; specify a different pen with **+p**\ *pen*.
    Add **+g**\ *fill* to fill the logo box [no fill].
    Append **+c**\ *clearance* where *clearance* is either *gap*, *xgap*\ /\ *ygap*,
    or *lgap*\ /\ *rgap*\ /\ *bgap*\ /\ *tgap* where these items are uniform, separate in
    x- and y-direction, or individual side spacings between logo and border.
    Append **+i** to draw a secondary, inner border as well. We use a uniform
    *gap* between borders of 2\ **p** and the :term:`MAP_DEFAULT_PEN`
    unless other values are specified. Append **+r** to draw rounded
    rectangular borders instead, with a 6\ **p** corner radius. You can
    override this radius by appending another value. Finally, append
    **+s** to draw an offset background shaded region. Here, *dx*/*dy*
    indicates the shift relative to the foreground frame
    [4\ **p**/-4\ **p**] and *shade* sets the fill style to use for shading [gray50].
    Requires **-L** or **-T**.  To specify separate parameters if both **-L** are **-T**
    are selected, append  **l**\|\ **t** to **-F**
    to specify panel parameters for just that panel [Default uses the same panel
    parameters for all selected map features].

.. _-G:

**-G**\ [*fill*] :ref:`(more ...) <-Gfill_attrib>`
    Select filling or clipping of "dry" areas. Append the shade, color,
    or pattern; or give no argument for clipping [Default is no fill].

.. _-I:

**-I**\ *river*\ [/*pen*]
    Draw rivers. Specify the type of rivers and [optionally] append pen
    attributes [Default pen: width = default, color = black, style =
    solid].

    Choose from the list of river types below; repeat option **-I** as
    often as necessary.

    0 = Double-lined rivers (river-lakes)

    1 = Permanent major rivers

    2 = Additional major rivers

    3 = Additional rivers

    4 = Minor rivers

    5 = Intermittent rivers - major

    6 = Intermittent rivers - additional

    7 = Intermittent rivers - minor

    8 = Major canals

    9 = Minor canals

    10 = Irrigation canals

    You can also choose from several preconfigured river groups:

    a = All rivers and canals (0-10)

    A = All rivers and canals except river-lakes (1-10)

    r = All permanent rivers (0-4)

    R = All permanent rivers except river-lakes (1-4)

    i = All intermittent rivers (5-7)

    c = All canals (8-10)

.. _-L:

.. include:: explain_-L_scale.rst_

.. _-M:

**-M**
    Dump a single multisegment ASCII (or binary, see
    **-bo**) file to standard output. No plotting
    occurs. Specify one of **-E**, **-I**, **-N** or **-W**.
    **Note**: If **-M** is used with **-E** then **-R** or the **+r** modifier
    to **-E** are not required as we automatically determine the region
    given the selected geographic entities.  If using **-W** and you want
    just certain levels (1-4) then use the full syntax **-W**\ *level*/\ *pen*
    and repeat for each level (pen is not used but required to parse the level correctly).

.. _-N:

**-N**\ *border*\ [/*pen*]
    Draw political boundaries. Specify the type of boundary and
    [optionally] append pen attributes [Default pen: width = default,
    color = black, style = solid].

    Choose from the list of boundaries below. Repeat option **-N** as
    often as necessary.

    1 = National boundaries

    2 = State boundaries within the Americas

    3 = Marine boundaries

    a = All boundaries (1-3)

.. _-Q:

**-Q**
    Mark end of existing clip path. No projection information is needed.
    Also supply **-X** and **-Y** settings if you have moved since the clip started.

.. _-S:

**-S**\ [*fill*] :ref:`(more ...) <-Gfill_attrib>`
    Select filling or clipping of "wet" areas. Append the shade, color,
    or pattern; or give no argument for clipping [Default is no fill].

.. _-T:

..  include:: explain_-T_rose.rst_

.. _-U:

.. include:: explain_-U.rst_

.. _-V:

.. |Add_-V| unicode:: 0x20 .. just an invisible code
.. include:: explain_-V.rst_

.. _-W:

**-W**\ [*level*/]\ *pen* :ref:`(more ...) <set-pens>`
    Draw shorelines [Default is no shorelines]. Append pen attributes
    [Defaults: width = default, color = black, style = solid] which
    apply to all four levels. To set the pen for each level differently,
    prepend *level*/, where *level* is 1-4 and represent coastline,
    lakeshore, island-in-lake shore, and lake-in-island-in-lake shore.
    Repeat **-W** as needed. When specific level pens are set, those not
    listed will not be drawn [Default draws all levels; but see **-A**].

.. _-X:

.. include:: explain_-XY.rst_

.. |Add_-bo| unicode:: 0x20 .. just an invisible code
.. include:: explain_-bo.rst_

.. |Add_perspective| unicode:: 0x20 .. just an invisible code
.. include:: explain_perspective.rst_

.. include:: explain_-t.rst_

.. include:: explain_help.rst_
