text

Добавьте текстовые описания к точкам данных

Описание

пример

text(x,y,txt) добавляет текстовое описание к одной или нескольким точкам данных в текущей системе координат, используя текст, заданный как txt. Чтобы добавить текст в одну точку, задайте x и y как скаляры. Чтобы добавить текст к нескольким точкам, задайте x и y как векторы с равной длиной.

text(x,y,z,txt) помещает текст в 3-D координаты.

пример

text(___,Name,Value) задает Text свойства объекта с использованием одной или нескольких пар "имя-значение". Для примера, 'FontSize',14 устанавливает размер шрифта равным 14 точкам. Можно задать свойства текста с любыми комбинациями входных аргументов в предыдущих синтаксисах. Если вы задаете Position и String свойства как пары "имя-значение", тогда вам не нужно задавать x, y, z, и txt входы.

text(ax,___) создает текст в Декартовых, полярных или географических осях, заданных ax вместо в текущей системе координат (gca). Опция ax может предшествовать любой комбинации входных аргументов в предыдущих синтаксисах.

пример

t = text(___) возвращает один или несколько текстовых объектов. Использование t изменение свойств текстовых объектов после их создания. Список свойств и описаний см. в разделе Свойства текста. Можно задать выход с любым из предыдущих синтаксисов.

Примеры

свернуть все

Постройте график синусоидальной кривой. В точке (π,0), добавить текстовое описание sin(π). Используйте разметку TeX \pi для греческой буквы π. Использование \leftarrow отображение стрелы влево.

x = 0:pi/20:2*pi;
y = sin(x);
plot(x,y)
text(pi,0,'\leftarrow sin(\pi)')

Figure contains an axes. The axes contains 2 objects of type line, text.

Список греческих символов и другой разметки TeX см. в Interpreter описание свойства.

Постройте график линии. Добавить один и тот же текст к двум точкам вдоль линии.

x = linspace(-5,5);
y = x.^3-12*x;
plot(x,y)

xt = [-2 2];
yt = [16 -16];
str = 'dy/dx = 0';
text(xt,yt,str)

Figure contains an axes. The axes contains 3 objects of type line, text.

Добавить разный текст к каждой точке путем определения str как массив ячеек.

x = linspace(-5,5);
y = x.^3-12*x;
plot(x,y)

xt = [-2 2];
yt = [16 -16];
str = {'local max','local min'};
text(xt,yt,str)

Figure contains an axes. The axes contains 3 objects of type line, text.

Создайте линейный график и добавьте одно текстовое описание к осям. Отобразите многострочный текст путем определения str как массив ячеек.

plot(1:10)
str = {'A simple plot','from 1 to 10'};
text(2,7,str)

Figure contains an axes. The axes contains 2 objects of type line, text.

Создайте линейный график и добавьте два текстовых описания к осям. При добавлении нескольких текстовых описаний к осям отображайте многострочный текст путем определения вложенных массивов ячеек.

plot(1:10)
str = {{'A simple plot','from 1 to 10'},'y = x'};
text([2 8],[7 7],str)

Figure contains an axes. The axes contains 3 objects of type line, text.

Создайте линейный график и добавьте текстовое описание к осям. Используйте красный, размер 14 шрифт.

plot(1:10)
text(2,8,'A Simple Plot','Color','red','FontSize',14)

Figure contains an axes. The axes contains 2 objects of type line, text.

Создайте линейный график и добавьте два текстовых описания вдоль строки. Верните текстовые объекты, t.

x = linspace(-5,5);
y = x.^3-12*x;
plot(x,y)
t = text([-2 2],[16 -16],'dy/dx = 0')

Figure contains an axes. The axes contains 3 objects of type line, text.

t = 
  2x1 Text array:

  Text    (dy/dx = 0)
  Text    (dy/dx = 0)

The text функция создает один текстовый объект для каждого описания текста. Таким образом, t содержит два текстовых объекта.

Измените цвет и размер шрифта для первого текстового объекта с помощью t(1). Используйте запись через точку для того, чтобы задать свойства. Если вы используете более ранний релиз, используйте set вместо этого функция.

t(1).Color = 'red';
t(1).FontSize = 14;

Figure contains an axes. The axes contains 3 objects of type line, text.

Входные параметры

свернуть все

Первая координата, заданная в одной из следующих форм:

  • Скаляр - Добавить текст в одну точку.

  • Вектор - Добавить текст в несколько точек.

Интерпретация первой координаты зависит от типа осей:

  • Для Декартовых осей первая координата является x осью в единицах данных. Чтобы изменить модули, установите Units свойство для Text объект.

  • Для полярных осей первой координатой является полярный угол, θ в радианах.

  • Для географических осей первая координата - широта в степенях.

x и y должны быть равными размерами.

Чтобы контролировать размещение текста относительно заданной точки, используйте HorizontalAlignment, VerticalAlignment, и Extent свойства Text объект.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

Вторая координата, заданная в одной из следующих форм:

  • Скаляр - Добавить текст в одну точку.

  • Вектор - Добавить текст в несколько точек.

Интерпретация второй координаты зависит от типа осей:

  • Для Декартовых осей вторая координата является y осью в единицах данных. Чтобы изменить модули, установите Units свойство для Text объект.

  • Для полярных осей второй координатой является радиус в единицах данных.

  • Для географических осей вторая координата - долгота в степенях.

x и y должны быть равными размерами.

Чтобы контролировать размещение текста относительно заданной точки, используйте HorizontalAlignment, VerticalAlignment, и Extent свойства Text объект.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

Третья координата, заданная в одной из следующих форм:

  • Скаляр - Добавить текст в одну точку.

  • Вектор - Добавить текст в несколько точек.

Интерпретация третьей координаты зависит от типа осей:

  • Для Декартовых осей третья координата является z осью в единицах данных. Чтобы изменить модули, установите Units свойство для Text объект.

  • Для полярной и географической осей третья координата влияет на слоистость текста на осях.

x, y, и z должны быть равными размерами.

Чтобы контролировать размещение текста относительно заданной точки, используйте HorizontalAlignment, VerticalAlignment, и Extent свойства Text объект.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

Текст для отображения, заданный как символьный вектор, строковый скаляр, символьный массив, строковые массивы, массив ячеек или категориальный массив.

Текст для одной точки данных

Чтобы добавить текст в одну точку, задайте txt как вектор символов или строковый скаляр. Для примера, text(.5,.5,'my text').

Для многострочного текста:

  • Используйте массив ячеек, где каждая камера содержит линию текста. Для примера, text(.5,.5,{'first','second'}).

  • Используйте строковые массивы, где каждый элемент является линией текста. Для примера, text(.5,.5,["first","second"]).

  • Используйте символьный массив с несколькими строками, где каждая строка содержит одинаковое количество символов. Для примера, text(.5,.5,['first '; 'second']).

  • Использование sprintf для создания нового символа линии. Для примера, text(.5,.5,sprintf('first \nsecond')).

Если вы задаете текст как категориальный массив, MATLAB® использует значения в массиве, а не категории.

Текст для нескольких точек данных

Чтобы отобразить один и тот же текст в каждом месте, задайте txt как вектор символов или строка. Для примера, text([0 1],[0 1],'my text').

Чтобы отобразить разный текст в каждом месте, используйте массив ячеек. Для примера, text([0 1],[0 1],{'first','second'}).

Для многострочного текста используйте вложенные массивы ячеек. Для примера, text([0 1],[0 1],{{'first','new line'},'second'}).

Греческие буквы, специальные символы и числовые переменные

Чтобы включать специальные символы, такие как суперскрипты, нижние индексы, греческие буквы или математические символы, используйте разметку TeX. Список поддерживаемых разметок см. в Interpreter свойство.

Чтобы включить числовые переменные в текст, используйте num2str функция.

v = 42;
txt = ['The value is ',num2str(v)];

Целевые оси, заданные как Axes объект, a PolarAxes объект, или GeographicAxes объект. Если вы не задаете оси, то text использует текущую систему координат.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: text(.5,.5,'my text','FontSize',14,'Color','red')

Примечание

Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства текста.

Размер шрифта, заданный как скалярное значение, больше нуля в модули точки. Размер шрифта по умолчанию зависит от конкретной операционной системы и локали. Одна точка равна 1/72 дюйм. Для изменения модулей шрифта используйте FontUnits свойство.

Пример: 12

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Толщина символов, заданная как 'normal' или 'bold'.

MATLAB использует FontWeight свойство для выбора шрифта из доступных в вашей системе. Не все шрифты имеют жирный вес. Поэтому установка полужирного шрифта веса все еще может привести к нормальной толщине шрифта.

Название шрифта, заданное как поддерживаемое название шрифта шрифта или 'FixedWidth'. Для правильного отображения и печати текста необходимо выбрать шрифт, поддерживаемый системой. Шрифт по умолчанию зависит от операционной системы и локали.

Чтобы использовать шрифт фиксированной ширины, который хорошо выглядит в любой локали, используйте 'FixedWidth'. Шрифт фиксированной ширины опирается на корень FixedWidthFontName свойство. Установка корневого FixedWidthFontName свойство приводит к немедленному обновлению отображения, чтобы использовать новый шрифт.

Цвет текста, заданный как триплет RGB, шестнадцатеричный код цвета, название цвета или краткое имя. Значение по умолчанию [0 0 0] соответствует черному.

Для пользовательского цвета укажите триплет RGB или шестнадцатеричный код цвета.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7].

  • Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 на F. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' являются эквивалентными.

Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешность
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Пример: 'blue'

Пример: [0 0 1]

Пример: '#0000FF'

Горизонтальное выравнивание текста относительно x значение в Position свойство, заданное как одно из значений в этой таблице. Вертикальная линия указывает, где x значение лежит относительно текста.

ЗначениеРезультат
'left' (по умолчанию)

'center'

'right'

Расположение текста, заданное как двухэлементный вектор вида [x y] или трехэлементный вектор вида [x y z]. Если вы опускаете третий элемент, z, затем MATLAB устанавливает его на 0.

Задайте положение используя числовые значения. Для преобразования значений datetime или длительности в соответствующие числовые значения для определенного направления координат смотрите ruler2num.

По умолчанию значение положения определяется в единицах данных. Для изменения единиц используйте Units свойство.

Пример: [0.5 0.5 0]

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Позиционные модули, заданные как одно из значений в этой таблице.

МодулиОписание
'data' (по умолчанию)Координаты данных.
'normalized' Нормировано относительно осей. Нижний левый угол осей преобразуется в (0,0) и правый верхний угол преобразуется в (1,1).
'inches'Дюймы.
'centimeters'Сантиметры.
'characters'

На основе размера символа системного шрифта по умолчанию.

  • Ширина символа = ширина буквы x.

  • Высота символа = расстояние между базовыми линиями двух строк текста.

'points'Точки. Одна точка равна 1/72 дюйма.
'pixels'

Пиксели.

Начиная с R2015b, расстояния в пикселях не зависят от вашего системного разрешения в Windows® и системы Macintosh:

  • В системах под управлением Windows пиксель составляет 1/96 дюйма.

  • В системах Macintosh пиксель составляет 1/72 дюйма.

На Linux® систем, размер пикселя определяется вашим системным разрешением.

Все модули, кроме 'data', измеряются из нижнего левого угла осей. Это свойство влияет на Position и Extent свойства.

Если вы задаете Position и Units свойства как Name,Value пары при создании Text объект, тогда порядок спецификации имеет значение. Чтобы определить положение с конкретными модулями, установите Units свойство перед Position свойство.

Текстовый интерпретатор, заданный в качестве одного из следующих значений:

  • 'tex' - Интерпретируйте символы с помощью подмножества разметки TeX.

  • 'latex' - Интерпретируйте символы с помощью разметки LaTeX.

  • 'none' - Отображать буквальные символы.

Синтаксис TeX

По умолчанию MATLAB поддерживает подмножество разметки TeX. Используйте разметку TeX, чтобы добавить суперскрипты и индексы, изменить тип и цвет шрифта и включить в текст специальные символы.

Модификаторы остаются в эффекте до конца текста. Верхние и нижние индексы являются исключением, поскольку они изменяют только следующий символ или символы в фигурных скобках. Когда вы устанавливаете интерпретатор на 'tex', поддерживаемые модификаторы следующие.

МодификаторОписаниеПример
^{ }Верхний индекс'text^{superscript}'
_{ }Индекс'text_{subscript}'
\bfПолужирный шрифт'\bf text'
\itИталический шрифт'\it text'
\slКосой шрифт (обычно тот же, что и курсивный шрифт)'\sl text'
\rmОбычный шрифт'\rm text'
\ fontname {specifier}Название шрифта - Заменить specifier с именем семейства шрифтов. Это можно использовать в сочетании с другими модификаторами.'\fontname{Courier} text'
\ fontsize {specifier}Размер шрифта - Заменить specifier с числовым скаляром значением в модули точек.'\fontsize{15} text'
\ цвет {specifier}Цвет шрифта - Заменить specifier с одним из следующих цветов: red, green, yellow, magenta, blue, black, white, gray, darkGreen, orange, или lightBlue.'\color{magenta} text'
\color[rgb]{specifier}Цвет пользовательского шрифта - Заменить specifier с трехэлементным триплетом RGB.'\color[rgb]{0,0.5,0.5} text'

В этой таблице перечислены поддерживаемые специальные символы для 'tex' интерпретатор.

Последовательность символовСимволПоследовательность символовСимволПоследовательность символовСимвол

\alpha

α

\upsilon

υ

\sim

~

\angle

\phi

\leq

\ast

*

\chi

χ

\infty

\beta

β

\psi

ψ

\clubsuit

\gamma

γ

\omega

ω

\diamondsuit

\delta

δ

\Gamma

Γ

\heartsuit

\epsilon

ϵ

\Delta

Δ

\spadesuit

\zeta

ζ

\Theta

Θ

\leftrightarrow

\eta

η

\Lambda

Λ

\leftarrow

\theta

θ

\Xi

Ξ

\Leftarrow

\vartheta

ϑ

\Pi

Π

\uparrow

\iota

ι

\Sigma

Σ

\rightarrow

\kappa

κ

\Upsilon

ϒ

\Rightarrow

\lambda

λ

\Phi

Φ

\downarrow

\mu

µ

\Psi

Ψ

\circ

º

\nu

ν

\Omega

Ω

\pm

±

\xi

ξ

\forall

\geq

\pi

π

\exists

\propto

\rho

ρ

\ni

\partial

\sigma

σ

\cong

\bullet

\varsigma

ς

\approx

\div

÷

\tau

τ

\Re

\neq

\equiv

\oplus

\aleph

\Im

\cup

\wp

\otimes

\subseteq

\oslash

\cap

\in

\supseteq

\supset

\lceil

\subset

\int

\cdot

·

\o

ο

\rfloor

\neg

¬

\nabla

\lfloor

\times

x

\ldots

...

\perp

\surd

\prime

´

\wedge

\varpi

ϖ

\0

\rceil

\rangle

\mid

|

\vee

\langle

\copyright

©

Разметка LaTeX

Чтобы использовать разметку LaTeX, установите значение интерпретатора 'latex'. Для встроенного режима окружите разметку одинарными долларовыми знаками ($). Для режима отображения окружите разметку знаками в два доллара ($$).

Режим LaTeXПримерРезультат
Действующий

'$\int_1^{20} x^2 dx$'

Equation with LaTeX inline mode.

Отображение

'$$\int_1^{20} x^2 dx$$'

Equation with LaTeX display mode.

Отображаемый текст использует стиль шрифта LaTeX по умолчанию. The FontName, FontWeight, и FontAngle свойства не имеют эффекта. Для изменения стиля шрифта используйте разметку LaTeX.

Максимальный размер текста, который можно использовать с интерпретатором LaTeX, составляет 1200 символов. Для многострочного текста это уменьшается примерно на 10 символов на линию.

Для примеров, которые используют TeX и LaTeX, смотрите греческие буквы и специальные символы в тексте графика. Для получения дополнительной информации о системе LaTeX, смотрите веб-сайт проекта LaTeX в https://www.latex-project.org/.

Выходные аргументы

свернуть все

Text объекты. Используйте элементы t для изменения определенного Text объект после его создания. Список свойств см. в разделе Свойства текста.

Совет

  • По умолчанию в Clipping свойство для текстовых объектов установлено в 'off' таким образом, текст может появиться вне осей. Чтобы отсечь текст по контурам осей, задайте для свойства значение 'on'.

Представлено до R2006a