Clear Filters
Clear Filters

Problem with multiple values on plot

1 view (last 30 days)
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
KSSV
KSSV on 28 Feb 2017
Have you tried with [L_pks,L_locs] = findpeaks(L_value,Temp_Lfile); ?
Catherine
Catherine on 28 Feb 2017
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

David Goodmanson
David Goodmanson on 28 Feb 2017
Edited: David Goodmanson on 28 Feb 2017
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
Catherine
Catherine on 28 Feb 2017
Indeed! It worked perfectly! Thanks heaps David!
David Goodmanson
David Goodmanson on 28 Feb 2017
you're welcome; it's good to hear that it worked.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!