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

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

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

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

Измените содержимое всплывающих подсказок на графике рассеивания. Во-первых, загрузите демонстрационные данные о несчастном случае и создайте график рассеивания. Когда вы наводите на точку данных, всплывающие подсказки по умолчанию появляются.

load('accidents.mat','hwydata','statelabel')
s = scatter(hwydata(:,14),hwydata(:,4));

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

s.DataTipTemplate.DataTipRows(1).Label = 'Population';
s.DataTipTemplate.DataTipRows(2).Label = 'Fatalities';

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

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

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

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

tbl = readtable('patients.xls');
s = scatter(tbl.Height,tbl.Weight);

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

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

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

Смотрите также

|

Похожие темы