Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

Marking the peak of a plot automatically without having to click on it

Asked by Lisa Justin

Lisa Justin (view profile)

on 29 Aug 2012

Hi,

Is it possible to mark the peak of a plot automatically with a command without having to to mark on each plot.

0 Comments

Lisa Justin

Lisa Justin (view profile)

Tags

Products

No products are associated with this question.

3 Answers

Answer by Star Strider

Star Strider (view profile)

on 29 Aug 2012
Edited by Star Strider

Star Strider (view profile)

on 29 Aug 2012
Accepted answer

If you have the Signal Processing Toobox, I suggest the findpeaks function with two outputs so that you get the value of the function at the peak as well as the index of your x-variable at which the peak occurs.

For example:

[Peak, PeakIdx] = findpeaks(Y); 

and the label would then be:

text(x(PeakIdx), Peak, sprintf('Peak = %6.3f', Peak));

using the text command.

To illustrate:

        X = [0:0.1:pi]';
        Y = sin(X);
        [Peak, PeakIdx] = findpeaks(Y);
        figure(1)
        plot(X, Y)
        text(X(PeakIdx), Peak, sprintf('Peak = %6.3f', Peak))

0 Comments

Star Strider

Star Strider (view profile)

Answer by Ilham Hardy

Ilham Hardy (view profile)

on 29 Aug 2012

4 Comments

Jan Simon

Jan Simon (view profile)

on 29 Aug 2012

Then use the output of the peakfinder and a simple TEXT command.

Lisa Justin

Lisa Justin (view profile)

on 29 Aug 2012

thanks, but what do you mean by simple TEXT command

Jan Simon

Jan Simon (view profile)

on 29 Aug 2012

See "help text" and "doc text".

Ilham Hardy

Ilham Hardy (view profile)

Answer by Wayne King

Wayne King (view profile)

on 29 Aug 2012

Do you know the value of the peak?, then yes, it's easy.

   x = randn(100,1);
   [val,I] = max(x);
   plot(x); hold on;
   plot(I,val,'r^','markerfacecolor',[1 0 0])

7 Comments

Lisa Justin

Lisa Justin (view profile)

on 29 Aug 2012

But the value is not displayed on the plot with Wayne's code

Tom

Tom (view profile)

on 29 Aug 2012

It should be; can you provide some sample data?

Ilham Hardy

Ilham Hardy (view profile)

on 29 Aug 2012

Below link is the 'how-to' display tooltip syntactically..

http://undocumentedmatlab.com/blog/controlling-plot-data-tips/

Happy reading,

Wayne King

Wayne King (view profile)

Contact us