# coyote: CGSYMCAT

- coyote/Graphics
- [Source code]

Description

      This function provides a symbol catalog for specifying a number of plotting symbols.

Categories

      Graphics

Params

      theInSymbol: in, required, type=varies
         The number (or name) of the symbol you wish to use. Possible values are::
            0  : No symbol.                         NONE
            1  : Plus sign.                         PLUSSIGN
            2  : Asterisk.                          ASTERISK
            3  : Dot (period).                      DOT
            4  : Open diamond.                      OPENDIAMOND
            5  : Open upward triangle.              OPENUPTRIANGLE
            6  : Open square.                       OPENSQUARE
            7  : X.                                 X
            8  : Defined by the user with USERSYM.  USERSYM
            9  : Open circle.                       OPENCIRCLE
           10  : Histogram style plot.              HISTOGRAM
           11  : Open downward triangle.            OPENDOWNTRIANGLE
           12  : Open rightfacing triangle.         OPENRIGHTTRIANGLE
           13  : Open leftfacing triangle.          OPENLEFTTRIANGLE
           14  : Filled diamond.                    FILLEDDIAMOND
           15  : Filled square.                     FILLEDSQUARE
           16  : Filled circle.                     FILLEDCIRCLE
           17  : Filled upward triangle.            FILLEDUPTRIANGLE
           18  : Filled downward triangle.          FILLEDDOWNTRIANGLE
           19  : Filled rightfacing triangle.       FILLEDRIGHTTRIANGLE
           20  : Filled leftfacing triangle.        FILLEDLEFTTRIANGLE
           21  : Hourglass.                         HOURGLASS
           22  : Filled Hourglass.                  FILLEDHOURGLASS
           23  : Bowtie.                            BOWTIE
           24  : Filled bowtie.                     FILLEDBOWTIE
           25  : Standing Bar.                      STANDINGBAR
           26  : Filled Standing Bar.               FILLEDSTANDINGBAR
           27  : Laying Bar.                        LAYINGBAR
           28  : Filled Laying Bar.                 FILLEDLAYINGBAR
           29  : Hat up.                            HATUP
           30  : Hat down.                          HATDOWN
           31  : Hat right.                         HATRIGHT
           32  : Hat down.                          HATDOWN
           33  : Big cross.                         BIGCROSS
           34  : Filled big cross.                  FILLEDBIGCROSS
           35  : Circle with plus.                  CIRCLEWITHPLUS
           36  : Circle with X.                     CIRCLEWITHX
           37  : Upper half circle.                 UPPERHALFCIRCLE
           38  : Filled upper half circle.          FILLEDUPPERHALFCIRCLE
           39  : Lower half circle.                 LOWERHALFCIRCLE
           40  : Filled lower half circle.          FILLEDLOWERHALFCIRCLE
           41  : Left half circle.                  LEFTHALFCIRCLE
           42  : Filled left half circle.           FILLEDLEFTHALFCIRCLE
           43  : Right half circle.                 RIGHTHALFCIRCLE
           44  : Filled right half circle.          FILLEDRIGHTHALFCIRCLE
           45  : Star.                              STAR
           46  : Filled star.                       FILLEDSTAR

Keywords

      color: in, optional, type=varies
          Set this keyword to the color (color table index, 24-bit value, or color name)
          of the color desired.
      names: in, optional, type=boolean, default=0
          If this keyword is set, the function returns the names of the symbols allowed.
          The index number of the name is its symbol number.
      thick: in, optional, type=float, default=1.0
          Set this keyword to the thickness desired. Default is 1.

Examples

      To use with normal IDL routines::
         Plot, findgen(11), PSYM=cgSymCat(theSymbol)
      To connect symbols with lines, use a negative value for the PSYM keyword::
         Plot, findgen(11), PSYM=-cgSymCat(theSymbol)
      To use with Coyote Library routines, you can call cgSymCat indirectly::
         cgPlot, findgne(11), PSYM=16, SYMCOLOR='dodger blue'

Author

      FANNING SOFTWARE CONSULTING::
         David W. Fanning
         1645 Sheely Drive
         Fort Collins, CO 80526 USA
         Phone: 970-221-0438
         E-mail: david@idlcoyote.com
         Coyote's Guide to IDL Programming: http://www.idlcoyote.com

History

      Change History::
         Written by David W. Fanning, 2 September 2006. Loosely based on the
            program MC_SYMBOL introduced on the IDL newsgroup 1 September 2006,
            and MPI_PLOTCONFIG__DEFINE from the Coyote Library.
         Modified to allow PSYM=8 and PSYM=10 to have their normal meanings. This shifted
         previous symbols by two values from their old meanings. For example, an hourglass
         went from symbol number 19 to 21. 2 October 2006. DWF.
         Whoops! Added two symbols but forgot to change limits to allow for them. 4 May 2007. DWF.
         Added THICK keyword. 21 Aug 2007. DWF.
         Added COLOR keyword and made THICK keyword apply to all symbols. 11 Nov 2008. DWF.
         If you are using USERSYM, the "color" can get "stuck" on the last color used to draw
            a symbol. To "unstick" the color,  you have to call USERSYM without a color keyword
            before calling it again with a color keyword. This is, without a doubt, the strangest
            bug I've ever seen in IDL! 20 June 2012. DWF.
         Changed the way I "unstick" the color from calling USERSYM to calling SYMCAT. This
            avoids a problem in changing the symbol when SYMCAT is used (unnecessarily) to pass
            a symbol into Coyote Graphics programs. 9 July 2012. DWF.
         Added the ability (via Jack Saba) to ask for symbols by name. 17 July 2012. DWF.
         Added the ability to ask for the color by name. 17 July 2012. DWF.
         Renamed to cgSYMCAT from SYMCAT. 17 July 2012. DWF.
         The previous problem with USERSYM colors "sticking" turned out to be a problem
             with cgGraphicsKeywords, so I removed previous "fix". 18 July 2012. DWF.
         Modified the program to allow a "negative" string to be used as the symbol name
             (e.g., PSYM="-star"). 30 July 2012. DWF.
         Modified to use 36 points in circle, rather than 72. 10 May 2013. DWF.
         Fixed a problem with using parentheses, rather than square brackets. 15 Dec 2014. DWF.

Copyright

      Copyright (c) 2006-2014, Fanning Software Consulting, Inc.