текст

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

Синтаксис

text(x,y,txt)
text(x,y,z,txt)
text(___,Name,Value)
text(ax,___)
t = 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, чтобы изменить свойства текстовых объектов после того, как они будут созданы. Для списка свойств и описаний, смотрите Text Properties. Можно задать вывод с любым из предыдущих синтаксисов.

Примеры

свернуть все

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

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

Для списка греческих символов и другой разметки 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)

Добавьте различный текст в каждую точку путем определения 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)

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

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

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

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

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

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

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

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

t = 
  2x1 Text array:

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

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

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

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

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

свернуть все

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

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

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

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

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

Типы данных: double | categorical | datetime | duration

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

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

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

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

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

Типы данных: double | categorical | datetime | duration

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

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

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

x, y и z должны быть равными размерами. Модули по умолчанию являются модулями данных. Чтобы изменить модули, установите свойство Units для объекта Text.

Типы данных: double | 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 или объект PolarAxes. Если вы не задаете оси, то text использует текущую систему координат.

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

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

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

Размер шрифта, заданный как скалярное значение, больше, чем нуль в модулях точки. Размер шрифта по умолчанию зависит от конкретной операционной системы и локали. Один пункт равен 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''inches'.
'centimeters''centimeters'.
'characters'

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

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

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

'points''points'. Один пункт равен 1/72 дюйма.
'pixels'

'pixels'.

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

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

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

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

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

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

Интерпретация текстовых символов, заданных как одно из этих значений:

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

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

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

TeX Markup

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

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

МодификаторОписаниеПример
^{ }Верхний индекс'text^{superscript}'
_{ }Индекс'text_{subscript}'
\bfBold font'\bf text'
\itКурсивный шрифт'\it text'
\slНаклонный шрифт (обычно то же самое как курсивный шрифт)'\sl text'
\rmОбычный шрифт'\rm text'
\fontname{specifier}Название шрифта — Замена specifier с именем семейства шрифтов. Можно использовать это в сочетании с другими модификаторами.'\fontname{Courier} text'
\fontsize{specifier}Размер шрифта — Замена specifier со значением числового скаляра в модулях точки.'\fontsize{15} text'
\color{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'

В этой таблице перечислены поддерживаемые специальные символы со свойством Interpreter, установленным на '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, установите свойство Interpreter на 'latex'. Используйте долларовые символы вокруг текста, например, используйте '$\int_1^{20} x^2 dx$' для встроенного режима или '$$\int_1^{20} x^2 dx$$' для режима отображения.

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

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

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

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

свернуть все

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

Советы

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

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