MATLAB: Is it possible to put a symbol next to textbox in graph.

annotation;graph

The code for the textbox.
txt = sprintf(['ResFreq: ',...
num2str(xy(1)), ' Hz' ]);
txtbox = annotation('textbox', [.6 .33 .1 .1], 'String', ...
[ txt ]);
set(txtbox,'BackgroundColor','red')
set(txtbox,'FaceAlpha',0.2)
set(txtbox,'LineWidth',1)
Here I have a picture of my graph.
I want to place the same triangle inside the textbox.

Best Answer

Hi,
Adding figure or geometric shape is not directly supported in annotation, the geometric object should be written in the text format which can be done using Latex. So, while creating the text string for the textbox, triangle object can be added in Latex format and 'Interpreter' property of annotation object can be set to 'latex' for it to print properly. Below example can help recreating the same. I am assuming the intersection point is plotted seperately with the triangle icon.
txt = strcat('$\triangle$',sprintf([' ResFreq: ',num2str(50), ' Hz']));
txtbox = annotation('textbox', [.6 .33 .1 .1], 'String', ...
txt);
set(txtbox,'Interpreter','latex')
set(txtbox,'BackgroundColor','red')
set(txtbox,'FaceAlpha',0.2)
set(txtbox,'LineWidth',1)
Hope it helps.