exponenta event banner

Добавить текст в диаграмму

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

Положение текста

Добавление текста рядом с определенной точкой данных с помощью text функция. В этом случае добавьте текст к точке (λ, sin (λ)). Первые два входных аргумента для 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)

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

Выравнивание текста

По умолчанию указанная точка данных находится слева от текста. Выровнять точку данных справа от текста, указав 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')

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

Размер шрифта

Укажите размер шрифта для текста, задав 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)

Figure contains an axes. The axes contains 2 objects of type line, 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;

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

Многострочный текст

Отображение текста в нескольких строках с использованием массива ячеек из символьных векторов. Каждый элемент массива ячеек представляет собой одну строку текста. В этом примере отображается заголовок с двумя строками. Можно использовать аналогичный подход для отображения многострочного текста с помощью 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)

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

Текст со значением переменной

Включение значения переменной в текст с помощью 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)

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

Текст снаружи осей

Добавление текста в любом месте фигуры с помощью 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')

Figure contains an axes. The axes contains an object of type line.

См. также

| | | |

Связанные темы