LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to see the peak values in a chart?

I have the following situation: I am applying the FFt to an acceleration signal. In the FFT-peak graph I see different peak frequencies. However I would like to know how much are those peak values and either display them in the chart on top of the peaks or extract them in numerical indicators. Is any of these solutions possible in LabView?

I guess the question stands for any kind of graph or chart where you want to extract and see only certain or peak values. Any suggestions?

Thank you.

Radu
0 Kudos
Message 1 of 6
(4,245 Views)
Hi.

If the data with which you create your chart is "smooth", you could simply take the derivative of that data, and see where it changes sign, thus providing information of local peaks. You could then take a look at those points and see which are minima, which are maxima, and their values, to take the ones that interest you the most (i.e., the highest maxima).

LabVIEW has a Derivative x(t).vi to get the derivative of an array (containing the points you used to generate the chart), located in Functions > Analyze > Signal Processing > Time Domain.

If the data is not smooth, then you will have a lot of derivative sign changes, so you need to do something else, like look for all values of the array that are over 90% of the maximum value of the array, or something of the sort.

Is your data smooth?

Alejandro
0 Kudos
Message 2 of 6
(4,217 Views)
Alejandro,

Your idea is not bad.
Unfortunately the data is not smooth so I would probably end up with a lot of sign changes...
There's got to be something easier. I am even considering selecting 'manually' in the chart the specific spots I am interested in but I do not know how to make multiple selection in same graph and have the data displayed separately in a cluster of indicators or in any indicator.
Generally the peaks I'm interested in are a 'higher' than the rest of the points so I am thinking that I could set a certain limit close to main stream of points and select only the values above that limit; this would give me the peaks in a table or chart. Problem is where to set that limit when I am not sure how 'tall' the peaks will be?...
Maybe somebody who had to deal with this before can send us some suggestions.

Radu
0 Kudos
Message 3 of 6
(4,211 Views)
Do you know about where those peaks are, how many you want, or the range in which they will occur? If so, you could simply find the maximum value in each area of interest of the array of data being passed to the graph (using the "Array Max & Min" function) and output that maximum as a numeric and/or send it to the graph as a second plot.

You could also try curve-fitting your data to get it smoother and then taking the derivative.
Robert Mortensen
Software Engineer
National Instruments
0 Kudos
Message 4 of 6
(4,201 Views)
OK. Attached is a VI which allows you to move cursors 0 and 1 to select any section of a graph, and then click a button to get the maximum of that particular section. It also places the third cursor (red) at the location of the maximum it finds. It is all done using property nodes of the graphs.

This VI is based on an exercise of the LabVIEW Basics II course, which I took a long time ago, but the manual of which is still very useful.

Hope this helps.

Alejandro
Message 5 of 6
(4,188 Views)
Thank you Alejandro.

I did use the example from Basics II; however, I did not know about the 'maximum' option.
I was just trying to see if it is possible to select 'more maximums" at once.
I'll find a 'work-around'.
0 Kudos
Message 6 of 6
(4,173 Views)