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 2-D and 3-D Plots 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!