Problem with multiple values on plot

Hi guys, I am having problem with repeated values on my plot.
Here is my code regarding the plot:
plot(L_value,Temp_Lfile)
title('Intensity profile','fontsize',18)
xlabel('Wavelength (nm)','fontsize',18)
ylabel('Intensity','fontsize',18)
set(gca,'fontsize',18)
[L_pks,L_locs] = findpeaks(Temp_Lfile);
L_val = L_value(L_locs);
text(L_val,L_pks,num2str(L_val),'fontsize',12);
Both my L_val and L_pks variables are only 1x8 matrix. So, there should only be 8 numbers on the plot. Which part of my code is incorrect?
Thanks guys!

2 Comments

Have you tried with [L_pks,L_locs] = findpeaks(L_value,Temp_Lfile); ?
Hi KSSV, thanks for your reply. Here is the error message if I did what you suggested:
Error in findpeaks (line 59)
[X,Ph,Pd,Th,Np,Str,infIdx] = parse_inputs(X,varargin{:});
Error in Simulation_L_fix_mica (line 86)
[L_pks,L_locs] = findpeaks(L_value,Temp_Lfile);

Sign in to comment.

 Accepted Answer

Hello Catherine, The last line will probably work if changed to
text(L_val,L_pks,num2str(L_val'),'fontsize',12);
this is because num2str of a row vector is one long string, which gets reused every time. num2str of a column vector is a column matrix of shorter strings, so text cycles through them.

2 Comments

Indeed! It worked perfectly! Thanks heaps David!
you're welcome; it's good to hear that it worked.

Sign in to comment.

More Answers (0)

Categories

Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!