Chandra X-Ray Observatory (CXC)
Skip to the navigation links
Last modified: December 2012

URL: http://cxc.harvard.edu/chips/add_label.html
AHELP for CIAO 4.5 ChIPS v1

add_label

Context: labels

Synopsis

Creates a label.

Syntax

add_label( [ChipsId,] xpos, ypos, text [,attributes])

Labels can also be created directly from the GUI using the "Annotate"
menu item.

Description

  • ChipsId - an optional ChipsId structure containing values to modify the currency state for the command.
  • xpos, ypos - the location of the label; the current coordinate system is used if one is not specified.
  • text - the text of the label. Latex formatting is supported.
  • attributes - optional parameters which allow the user to configure properties though a structure, list, or attribute string.

The add_label command creates a label whose attributes are specified by user preferences or in an attribute list. The new label becomes current by default; providing a ChipsId overrides the currency state.

The position of the label is specified as a coordinate pair (xpos, ypos) in data, pixel, frame, or plot normalized coordinates. Labels specified in data coordinates will only be displayed if the are within the coordinate system range.

Alignment

Alignment attributes control how the text string is situated in relation to the reference position. Horizontal alignment can be specified as left (0), center (.5), right (1), or a numeric ratio of the text length. Vertical alignment is similarly controlled: bottom (0), center (.5), top (1), or a numeric ratio.

Customizing the Label

There are several attributes that control the label characteristics. The attributes can be set to the ChIPS defaults, values provided in the add_label command, or values from the user's preference file.

The attributes may also be modified with the set_label command at any time; see "ahelp set_label" and "ahelp setget" for more information.

Please see the section "Label Preferences and Attributes" below the examples for a list of the label preferences.

Example 1

chips> add_label(0.4, 0.5, "area={\\pi}r^2")

Add a label at position (.4,.5). Latex formatting is used in the label text, so the "\" character had to be protected. Alternatively, the r qualifier could have been used:

chips> add_label(0.4, 0.5, r"area={\pi}r^2")

Example 2

chips> add_label(100, 100, "Fig. B", ["color", "blue", "size", 14])

Create a blue label, specifying the attribute values in a list.

Example 3

chips> clear()
chips> add_curve([1,2,3], [-9,2,-2])
chips> add_label(2, -6, "In data coordinates")
chips> add_label(0.5, 0.92, "Frame coords", ["halign", 0.5, "coordsys",
FRAME_NORM])
chips> add_label(0.1, 0.9, "Plot coords", ["coordsys", PLOT_NORM])
chips> limits(X_AXIS, 1.5, 4)

Three labels are added: the first is placed in the data-coordinate system created by the add_curve call; the second is placed in frame-normalized coordinates, and so appears as a plot title (the text has been horizontally aligned so that its center is at the middle of the frame); and the third is placed in plot-normalized coordinates (so appears at the top-left corner of the plot). The limits call causes only the first label to move; the second and third labels do not change position.

Example 4

chips> lbl = ChipsLabel()
chips> lbl.color = "blue"
chips> lbl.size = 8
chips> lbl.stem = "MyLabel"
chips> add_label(100, 100, "Figure A", lbl)

Populate the "lbl" structure with the attribute values, then add the label "Figure A".

Label Preferences and Attributes

The attributes associated with labels are given in the following table, where the "Set?" column refers to whether the attribute can be changed using the set_label() command. To change the label preference settings prepend "label." to the attribute name.

Attribute Description Options Default Set?
angle Angle, in degrees, at which the label is drawn -360.0 to 360.0 0.0 Yes
color Color of the text name or hex; see the Color section of "ahelp chipsopt" default Yes
coordsys coordinate system for the label PIXEL, WINDOW_NORM, FRAME_NORM, PLOT_NORM, DATA see "ahelp coordsys" No
depth Integer value indicating label depth see the Depth section of "ahelp chipsopt" default Yes
font text font helvetica|courier|times|greek; see the Font section of "ahelp chipsopt" helvetica Yes
fontstyle style of the label text normal|bold|italic|bolditalic; see the Font Style section of "ahelp chipsopt" normal Yes
halign Horizontal location of the string reference point of the label auto|base|center|left|right|top; see the Text Alignment section of "ahelp chipsopt" left Yes
size Font size of the text 1 to 100 12 Yes
stem stem used for label id An alpha-numeric character sequence that does not contain a space lbl No
valign Vertical location of the string reference point of the label auto|base|center|left|right|top; see the Text Alignment section of "ahelp chipsopt" base Yes

Changes in CIAO 4.5

Labels can now be added directly from the GUI, using either the "Annotate" menu item or the "Annotate" option brought up by using the Right-Mouse Button in the ChIPS window.

Coordinate system support

It is now possible to set the coordsys attribute of annotation objects - i.e. those created by ChipsLabel(), ChipsLine(), ChipsPoint(), ChipsRegion(), and ChipsColorBar() - to define the coordinate system used to create the object. So the following will add a label - of the current time - to the bottom-right corner of the frame.

chips> l = ChipsLabel()
chips> l.coordsys = FRAME_NORM
chips> l.halign = 1
chips> import time
chips> add_label(0.95, 0.05, time.asctime(), l)

Bugs

See the bugs pages on the ChIPS website for an up-to-date listing of known bugs.

See Also

chips
chips, chipsgui, chipsrc, show_gui
concepts
aspectratio, attributes, chipsid, chipsopt, colors, coordsys, currency, depthcontrol, entitycreation, preferences, setget
labels
current_label, delete_label, display_label, get_label, hide_label, move_label, set_label, shuffle_label
utilities
load_font

Last modified: December 2012
CXC logo

The Chandra X-Ray Center (CXC) is operated for NASA by the Smithsonian Astrophysical Observatory. 60 Garden Street, Cambridge, MA 02138 USA.   Email: cxcweb@head.cfa.harvard.edu Smithsonian Institution, Copyright © 1998-2012. All rights reserved.