text with arrow pointer

i need help with
how to draw an arrow to point in a specific direction

Answers (1)

Cris LaPierre
Cris LaPierre on 25 Jul 2023

5 Comments

how to specify
x and y??
Cris LaPierre
Cris LaPierre on 25 Jul 2023
Edited: Cris LaPierre on 25 Jul 2023
By default, these are in normalized units (percentage of your x and y range).
There is an example on the linked page that demonstrates how to use it. The first value in x and y correspond to the tail position, and the 2nd values correspond to the head.
the x-axis is from 0 to 24 how to convert that to 1
and so is the y-axis???????
Be careful, the positions for annotation() can only be absolute coordinates or coordinates normalized to the figure. There is no way to specify data units.
There are File Exchange contributions to make it easier to use data units
Here's an example of one such program on the File Exchange
% add an annotation pointing to the 5th data point
x = 0:24;
y = randi(6000,size(x));
plot(x,y)
S = sprintf("A2="+y(5));
xa = [-1 0]+x(5);
ya = [-1000 0]+y(5);
[xaf,yaf] = ds2nfu(xa,ya);
annotation('textarrow', xaf, yaf,'String',S)

Sign in to comment.

Products

Tags

Asked:

on 25 Jul 2023

Commented:

on 25 Jul 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!