В этом примере показано, как добавить текст на график, управлять положением и размером текста и создавать многострочный текст.
Добавить текст рядом с определенной точкой данных можно используя команду text
функция. В этом случае добавьте текст к точке . Первые два входных параметров в text
функция определяет положение. Третий аргумент задает текст.
По умолчанию текст поддерживает подмножество разметки TeX. Используйте разметку TeX \pi
для греческой буквы . Отобразите стрелу, указывающую налево, включив разметку TeX \leftarrow
. Полный список разметки см. в разделе Греческие буквы и специальные символы в тексте графика.
x = linspace(0,10,50);
y = sin(x);
plot(x,y)
txt = '\leftarrow sin(\pi) = 0';
text(pi,sin(pi),txt)
По умолчанию заданная точка данных находится слева от текста. Выровняйте точку данных справа от текста путем определения HorizontalAlignment
свойство как 'right'
. Используйте стрелу, указывающую вправо, а не налево.
x = linspace(0,10,50); y = sin(x); plot(x,y) txt = 'sin(\pi) = 0 \rightarrow'; text(pi,sin(pi),txt,'HorizontalAlignment','right')
Укажите размер шрифта для текста путем установки FontSize
свойство как аргумент пары "имя-значение" для text
функция. Можно использовать подобный подход, чтобы изменить размер шрифта при использовании title
, xlabel
, ylabel
, или legend
функций.
x = linspace(0,10,50); y = sin(x); plot(x,y) txt = '\leftarrow sin(\pi) = 0'; text(pi,sin(pi),txt,'FontSize',14)
Текстовая функция создает объект Text. Text
объекты имеют свойства, которые можно использовать для настройки внешнего вида текста, такие как HorizontalAlignment
или FontSize
.
Можно задать свойства двумя способами:
Используйте пары "имя-значение" в text
команду, например 'FontSize',14
.
Используйте Text
объект. Можно вернуть Text
объект как выходной аргумент из text
и присвойте ее переменной, например t
. Затем используйте запись через точку для того, чтобы задать свойства, такие как t.FontSize = 14
.
В данном примере измените размер шрифта, используя запись через точку вместо пары "имя-значение".
x = linspace(0,10,50);
y = sin(x);
plot(x,y)
txt = '\leftarrow sin(\pi) = 0';
t = text(pi,sin(pi),txt)
t = Text (\leftarrow sin(\pi) = 0) with properties: String: '\leftarrow sin(\pi) = 0' FontSize: 10 FontWeight: 'normal' FontName: 'Helvetica' Color: [0 0 0] HorizontalAlignment: 'left' Position: [3.1416 1.2246e-16 0] Units: 'data' Show all properties
t.FontSize = 14;
Отображение текста через несколько линии с помощью массива ячеек из векторов символов. Каждый элемент массива ячеек является одной линией текста. В данном примере отображается заголовок с двумя линиями. Можно использовать подобный подход для отображения многострочного текста с title
, xlabel
, ylabel
, или legend
функций.
x = linspace(0,10,50); y = sin(x); plot(x,y) txt = {'Plotted Data:','y = sin(x)'}; text(4,0.5,txt)
Включите значение переменных в текст при помощи num2str
функция для преобразования числа в текст. В данном примере вычислите среднее значение y и включите значение в заголовок. Можно использовать подобный подход, чтобы включить значения переменных с title
, xlabel
, ylabel
, или legend
функций.
x = linspace(0,10,50); y = sin(x); plot(x,y) avg = mean(y); txt = ['Average height: ' num2str(avg) ' units']; text(4,0.5,txt)
Добавьте текст в любое место рисунка, используя annotation
функция вместо text
функция. Первый входной параметр задает тип аннотации. Второй входной параметр задает положение аннотации в модулях, нормированных к рисунку. Удалите границу текстового поля путем установки EdgeColor
свойство к 'none'
. Для получения дополнительной информации о текстовых аннотациях см. annotation
функция.
x = linspace(0,10,50); y = sin(x); plot(x,y) annotation('textbox',[.9 .5 .1 .2],'String','Text outside the axes','EdgeColor','none')
annotation
| text
| title
| xlabel
| ylabel