Add text to figure using mouse


  • gtext(str)
  • gtext(str,Name,Value)
  • t = gtext(___)


gtext(str) inserts the text, str, at the location you select with the mouse. When you hover over the figure window, the pointer becomes a crosshair. gtext is waiting for you to select a location. Move the pointer to the location you want and either click the figure or press any key, except Enter.

gtext(str,Name,Value) specifies text properties using one or more name-value pair arguments. For example, 'FontSize',14 specifies a 14-point font.

t = gtext(___) returns an array of text objects created by gtext. Use t to modify properties of the text objects after they are created. For a list of properties and descriptions, see Text Properties. You can return an output argument using any of the arguments from the previous syntaxes.


collapse all

Add Text to Figure Using Mouse

Create a simple line plot and use gtext to add text to the figure using the mouse.

gtext('My Plot')

Click the figure to place the text at the selected location.

Specify Font Size and Color

Create a simple line plot and add text to the figure using the mouse. Use a red, 14-point font.

gtext('My Plot','Color','red','FontSize',14)

Click the figure where you want to display the text.

Modify Text After Creation

Create a simple line plot and add text to the figure using the mouse. Return the text object created, t.

t = gtext('My Plot')

Click the figure to place the text and create the text object.

t = 

  Text (My Plot) with properties:

                 String: 'My Plot'
               FontSize: 10
             FontWeight: 'normal'
               FontName: 'Helvetica'
                  Color: [0 0 0]
    HorizontalAlignment: 'left'
               Position: [4.3906 5.3950 0]
                  Units: 'data'

  Show all properties

Use t to change the font size and color of the text by setting text properties. Starting in R2014b, you can use dot notation to set properties. If you are using an earlier release, use the set function instead.

t.Color = 'red';
t.FontSize = 14;

Related Examples

Input Arguments

collapse all

str — Text to displaycharacter string | cell array of strings | character array with multiple rows

Text to display, specified in one of these forms:

  • Character string — Display the text with one click, for example:

    gtext('my text')

  • Cell array of strings — Display one row of the array with each click. For example, this code displays first with the first click and second with the second click.


    To display multiline text, specify more than one string per row.

    gtext({'first','new line';'second','new line'})

  • Character array with multiple rows — Display one row of the array with each click. Each row must contain the same number of characters, for example:


To include special characters, such as superscripts, subscripts, Greek letters, or mathematical symbols, use TeX markup. For a list of supported markup, see the Interpreter property.

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside single quotes (' '). You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Example: text(.5,.5,'my text','FontSize',14,'Color','red')

The properties listed here are only a subset. For a full list, see Text Properties.

    Note:   You cannot specify the Position text property as a name-value pair during text creation. gtext ignores the specified value.

'FontSize' — Font size10 (default) | scalar value greater than zero

Font size, specified as a scalar value greater than zero in point units. One point equals 1/72 inch. To change the font units, use the FontUnits property.

Example: 12

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

'FontWeight' — Thickness of text characters'normal' (default) | 'bold'

Thickness of the text characters, specified as one of these values:

  • 'normal' — Default weight as defined by the particular font

  • 'bold' — Thicker character outlines than normal

MATLAB® uses the FontWeight property to select a font from those available on your system. Not all fonts have a bold font weight. Therefore, specifying a bold font weight still can result in the normal font weight.

    Note:   The 'light' and 'demi' font weight values have been removed. Use 'normal' instead.

'FontName' — Font name'Helvetica' (default) | 'FixedWidth' | system supported font name

Font name, specified as the name of the font to use or the string 'FixedWidth'. To display and print properly, the font name must be a font that your system supports.

To use a fixed-width font that looks good in any locale, use the case-sensitive string 'FixedWidth'. The 'FixedWidth' value relies on the root FixedWidthFontName property. Setting the root FixedWidthFontName property causes an immediate update of the display to use the new font.

Example: 'Cambria'

'Color' — Text color[0 0 0] (default) | RGB triplet | color string | 'none'

Text color, specified as a three-element RGB triplet, a color string, or 'none'. The default color is black with an RGB triplet value of [0 0 0]. If you set the color to 'none', then the text is invisible.

An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1], for example, [0.4 0.6 0.7]. This table lists RGB triplet values that have equivalent color strings.

Long NameShort NameRGB Triplet
'yellow''y'[1 1 0]
'magenta''m'[1 0 1]
'cyan''c'[0 1 1]
'red''r'[1 0 0]
'green''g'[0 1 0]
'blue''b'[0 0 1]
'white''w'[1 1 1]
'black''k'[0 0 0]

Example: 'blue'

Example: [0 0 1]

'HorizontalAlignment' — Horizontal alignment of text with respect to position point'left' (default) | 'center' | 'right'

Horizontal alignment of the text with respect to the x value in the Position property, specified as one of the values in this table. The vertical line indicates where the x value lies in relation to the text.

'left' (default)



'Interpreter' — Interpretation of text characters'tex' (default) | 'latex' | 'none'

Interpretation of text characters, specified as one of these values:

  • 'tex' — Interpret text strings using a subset of TeX markup.

  • 'latex' — Interpret text strings using LaTeX markup.

  • 'none' — Display literal characters.

TeX Markup

By default, MATLAB supports a subset of TeX markup. Use TeX markup to add superscripts and subscripts, modify the text type and color, and include special characters in the text string.

This table lists the supported modifiers with the Interpreter property set to 'tex'. Modifiers remain in effect until the end of the string. Superscripts and subscripts are an exception because they only modify the next character or the text within the curly braces {}.

ModifierDescriptionExample of String
^{ }Superscript'text^{superscript}'
_{ }Subscript'text_{subscript}'
\bfBold font'\bf text'
\itItalic font'\it text'
\slOblique font (usually the same as italic font)'\sl text'
\rmNormal font'\rm text'
\fontname{specifier}Font name — Set specifier as the name of a font family. You can use this in combination with other modifiers.'\fontname{Courier} text'
\fontsize{specifier}Font size — Set specifier as a numeric scalar value in point units to change the font size.'\fontsize{15} text'
\color{specifier}Font color — Set specifer as one of these colors: red, green, yellow, magenta, blue, black, white, gray, darkGreen, orange, or lightBlue.'\color{magenta} text'
\color[rgb]{specifier}Custom font color — Set specifier as a three-element RGB triplet.'\color[rgb]{0,0.5,0.5} text'

This table lists the supported special characters with the Interpreter property set to 'tex'.

Character SequenceSymbolCharacter SequenceSymbolCharacter SequenceSymbol

























































































































































LaTeX Markup

To use LaTeX markup, set the Interpreter property to 'latex'. The displayed text uses the default LaTeX font style. The FontName, FontWeight, and FontAngle properties do not have an effect. To change the font style, use LaTeX markup within the text string.

The maximum size of the string that you can use with the LaTeX interpreter is 1200 characters. For multiline strings, this reduces by about 10 characters per line.

For more information about the LaTeX system, see The LaTeX Project Web site at

More About

expand all


gtext uses the ginput and text functions.

See Also



Introduced before R2006a

Was this topic helpful?