How can I mark specific indexes on a plot?

62 views (last 30 days)
Serhat Sayim
Serhat Sayim on 6 Dec 2020
Commented: Serhat Sayim on 7 Dec 2020
I have file with the breathing of sick people. These breathing sounds have wheezes in it. I had the plot drawn. I also have the start and end indexes of wheezing. How can I mark these indexes on the plot?

Answers (2)

KSSV
KSSV on 6 Dec 2020
If (x,y) is your data and id1 and id2 are the indices. Use:
plot(x,y,'b')
hold on
id = [id1 id2] ;
plot(x(id),y(id),'*r')

Steven Lord
Steven Lord on 6 Dec 2020
Edited: Steven Lord on 6 Dec 2020
You could use the MarkerIndices property of the line object returned by plot or you could use xline depending on how you want those points marked.
x = 0:360;
y = sind(x);
plot(x, y, 'ro-','MarkerIndices', (0:45:360)+1)
figure
plot(x, y, 'r-')
for multiplesOf45 = 0:45:360
xline(multiplesOf45)
end
  1 Comment
Serhat Sayim
Serhat Sayim on 7 Dec 2020
My plot is this. For example first wheeze starting at 1063 and end at 7952. My question is how can I mark points 1063 and 7952 only? These indexes are only in x axis .The region between this indexes will give me the wheezing of an patient. Can you help me with this?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by