Создание пользовательских всплывающих подсказок

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

Графики, поддерживающие эти индивидуальные настройки, имеют DataTipTemplate свойство, для примера, Line объекты, созданные с помощью plot функция.

Изменение меток и добавление строки

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

load('accidents.mat','hwydata','statelabel')
s = scatter(hwydata(:,5),hwydata(:,4));
dt = datatip(s,11246.7,1493);

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

Измените метки всплывающих подсказок из X и Y на Drivers (in thousands) и Fatalities путем доступа к DataTipTemplate свойство нанесенного на график объекта и установка Label свойства.

s.DataTipTemplate.DataTipRows(1).Label = 'Drivers (in thousands)';
s.DataTipTemplate.DataTipRows(2).Label = 'Fatalities'; 

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

row = dataTipTextRow('State',statelabel);
s.DataTipTemplate.DataTipRows(end+1) = row;

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

Показать значения таблиц в всплывающих подсказках

Измените содержимое всплывающих подсказок для графика поля точек, чтобы включить значения из таблицы. Сначала составьте таблицу из выборки электронных таблиц данных о пациентах. Постройте график данных. Затем создайте всплывающие подсказки в интерактивном режиме или при помощи datatip функция.

tbl = readtable('patients.xls');
s = scatter(tbl.Height,tbl.Weight);
dt = datatip(s,64,142);

Измените метки всплывающих подсказок из X и Y на Height и Weight. Затем добавьте новую строку к всплывающей подсказке, которая использует метку Age и показывает значения из столбца Age таблицы.

s.DataTipTemplate.DataTipRows(1).Label = 'Height';
s.DataTipTemplate.DataTipRows(2).Label = 'Weight';
row = dataTipTextRow('Age',tbl.Age);
s.DataTipTemplate.DataTipRows(end+1) = row;

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

Если вы используете R2018b или более ранние версии, настройте всплывающие подсказки, установив UpdateFcn свойство datacursormode объект вместо использования DataTipTemplate объект.

См. также

| |

Похожие темы