TFA STFT Spectrogram: log scale on frequency axis

Hi,
I'm trying to get my spectrogram to display a logarithmic scale on the frequency axis, but whenever I go to the graph properties->y-axis, turn off autoscaling, check the log scale box, hit okay, and then run the vi, I still have a linear scale.  I tried creating a property node for the spectrogram's y-axis and setting the scale to logarithmic, but this doesn't work either.  Does anyone have any suggestions? 
Thanks a lot,
Chris K.
Attachments:
Front Panel.png ‏267 KB

log (0), log (1), log (2), log(3), ... ?
The Intensity graph uses the array indices (0,1,2,3,...) for the axis, not the values of Y.  If your frequencies are 1, 2, 5, 10, 20, 50, 100, 200, 500, 1000, ..., you would need an array with >=1001 elements to get the axis values where you wanted them and it would still plot the axis linearly.  You can certainly put the Z-values for frequency 10 in the 4th column of the array.  To get the labels to display the Y-axis frequencies might require overlaying an X-Y graph with logarithmic mapping of the Y-axis on the Intensity graph.  By making the appropriate parts transparent, you should be able to get the Y-axis display you want.  Tedious, but probably not too difficult.
Lynn

Similar Messages

  • Log scale of the axis and the best-fit line

    I try to plot a graph and set the scale of the x-axis to log scale and then i try to plot a linear trendline (best fit line). but the linear trendline does now show on the graph. but if i set the axis scale to linear, then the trendline does show.  i will need my graph in the log scale and also a linear best fit line. please help me out

    0
    100
    3.00E-09
    71.52
    1.00E-08
    57.3
    3.00E-08
    39.15
    1.00E-07
    24.13
    3.00E-07
    14.77
    1.00E-06
    7.22
    i meant you these data, and left column is x-axis and gonna use log scale for the axis. the right column is the y axis. and then i need a best fit line for this graph.. hope you can help me

  • TFA STFT Spectrogram (waveform) VI

    Hello, Can you give me the formula for the calculation of the spectrogram in the TFA STFT Spectrogram (waveform) VI?Right Click->Help: There is no detailed information about the math used in this VI.Please, see attachment. Regards, asipers

    elset191 wrote:
    truplicate post
     ... sigh
    Cory K

  • # frequencies in STFT spectrogram

    The help file info for STFT Spectrogram says, in part:
    STFT Spectrogram {X} is a 2D array that describes the time waveform energy
    distribution in the joint time-frequency domain. The number of rows (time
    axis) in STFT Spectrogram {X} is given by the following equation.
    # rows = # elements in X / time increment,  then rounded down
    The number of columns (frequency axis) in STFT Spectrogram {X} is given by
    the following equation.
    # columns = (# elements in X / 2) + 1,  then rounded down
    By experimenting I have confirmed that the help file is correct, but I am
    surprised that the number of columns (i.e. frequencies in the STFT) is what
    it is.  If the window size is N (I assume that means N time points are
    used to compute each spectrum estimate), then the number of frequencies in the
    spectrum should be N/2 + 1, even if the number of elements is much
    larger.  Can someone clarify? 
    Thank you.
    Maybe all the points in X outside the N point window ARE used, but set to zero. 
    In essence this would amount to zero-padding an N point long signal to make
    it as long as the original signal.  Why would this be a good idea?  It increases
    the computational effort with no increase in actual information about the signal. 
    It also can make one think the spectrum has a much
    higher frequency resolution than it really does have.  The spectrum of a zero-padded
    time series has no more "real" frequency resolution than the unpadded series -
    it is just a resampling, with interpolation, of the spectrum of the unpadded signal.

    That's an interesting question. If you open up the STFT Spectrogram Vi to look at the algorithm being employed, you can look at exactly what process is going on. It does appear as though a type of zero-padding is being used.
    Zero-padding before the FFT to a power of 2 would actually decrease processing time due to the FFT algorithm used, but that doesn't seem to be the rationale here.
    Jarrod S.
    National Instruments

  • HOW TO SCALE THE CORRECT FREQUENCY AXIS?

    hello guys
    im trying to calculate the real cepstrum of a short speech signal for time/pitch scaling. cepstrum=ifft[log(abs ((fft))].
    my problem is 1) how can i correctly show the frequency axis (x-axis) of the fft result in Hz and not in time (samples) and then  2) the result of the cepstrum in time?
    i cant seem to be able to do that as you can see from my program below.
    can anybody help me please?
    kind regards
    alex
    p.s. the zip file contains my program with a sample sound file that can be processed with
    Attachments:
    TD-PSOLA ALGO.vi.zip ‏494 KB

    Yes I used the 512 samples.
    You can see the DF if you set the graph to a plot-style, then zoom in to a 0-500 Hz scale then you will see that at every 83 Hz a point.
     The reason your maximum is not half dF is that you have 512 samples, so 256 frequency bins times 86 =22016 BUT you start at zero so the max is a little lower
    255*86.13 is 21963 Hz
    About CSepstrum I don't know, I hardly ever used IFFT.
    Ton
    Free Code Capture Tool! Version 2.1.3 with comments, web-upload, back-save and snippets!
    Nederlandse LabVIEW user groep www.lvug.nl
    My LabVIEW Ideas
    LabVIEW, programming like it should be!

  • Short time fourier transform (STFT) frequency axis

    Could someone please explain the frequency axis output of the short-time fourier transform spectrogram? The help menu indicates that the number of output columns will be equal to (# of input samples)/2. I would expect that the number of output frequency bins would be equal to half the size of the fft and that the bin width would be determined by the sample rate.

    STFT is implemented using the windowed Fourier transform. Before applying the Fourier transform, the windowed signal can be zero-padded to get the same length as the input signal. So in this case, the FFT length is equal to the signal length. Such zero padding can get a smooth spectrogram for the detailed visual investigation of frequency contents.
    NISH DSP
    Medical ultrasound and signal processing

  • Xy graph natural log scale

    Hi,
    How can I make a xy graph with a natural log scale on the y axis. I
    know there is base 10 log, but is there something to produce a natural
    log scale.
    Thank you,
    -Tim

    All logs scales are similar so I am not quite sure what you mean by "natural log" scale.
    Logarithmic mapping for an axis does not imply any special base, in fact the tick marks are labeled in direct original units (e.g. 0.1, 1, 10, 100) so there isn't even any conversion. Functions such as y=10^x, y=e^x, y=e^(-x), etc. will all shows as a straight lines once the mapping for the y axis is set to logarithmic..
    Could you be a bit more specific on what you actually want?
    LabVIEW Champion . Do more with less code and in less time .

  • 3D Graph log scale "feature"

    Another annoying feature just discovered in the 3D Graph object: in Log scale, you can define the boundaries of an axis, but it will be ignored by the graph itself.
    Example. Here are the settings I define for the Y axis. Notice the minimum value of 5?
    Well, fat luck... Here is what LV is ready to do:
    Now, in Edit mode, I can edit the scale itself and force the smallest value of the Y axis to be 5, but here is how it goes:
    Not cool!
    Solved!
    Go to Solution.

    Hi hanrock,
    thanks, I got the Level List to work as you described. But if I may say, it is not exactly "Standard":
    - To have to press the "Delete" key(not the Backspace key, no Ctrl-X shortcut, no right click contextual menu) to remove an entry is very specific to this object (and not described in the Help file).- To have to left click in the "[Add new level here]" entry and wait for a couple of seconds to have it turn black and be editable is not intuitive either.  There is BTW no editor popping up for me when I left-click the entry, so I am not sure what you are referring to.
    - Worse, if you do that and then decide to not enter a new value, and for instance click outside of the listbox, you get this pop-up window:
    which:
    1) does not make any sense, as you haven't actually entered any level at all
    2) hangs up LabVIEW for 10-20 seconds (in this depressed OK button mode I have pasted above) before it reverts to a clickable OK button and can be pressed to discard the window.
    I would suggest that this object be debugged further. I have noticed other issues with it that are even worst than those I have mentioned so far (maybe topic for another post when I get sufficiently annoyed by them?)

  • Ifft with a log scale

    I currently am reading in a data file that has the frequencies in a log scale.  I understand that I cannot to a ifft if the frequencies are not in a liner step.  I was wondering if anyone knew how to do a 2-D interpolation to try and space my signal at a linear step.  I was trying to space at 1MHz, below  is some of the data I am reading into labview.  Any advice or help would be greatly appreciated.  Thank you!
    David Steele
    Frequency (GHz) Voltage (V)
    0.22000 0.082643
    0.22220 0.16803
    0.22442 0.14800
    0.22667 0.079847
    0.22893 0.071640
    0.23122 0.18030
    0.23353 0.12486
    0.23587 0.25161
    0.23823 0.089895
    0.24061 0.11021
    0.24302 0.15196
    0.24545 0.12334
    0.24790 0.17741
    0.25038 0.29914
    0.25288 0.15243
    0.25541 0.18977
    0.25797 0.15024
    0.26055 0.082443
    0.26315 0.060924
    0.26578 0.044015

    Here's a quick modification to show one possibility of a linear interpolation. You can increment any way you want. I choose a fixe number of points between the first and last value. (I assume that your real data has more points, with the current limited data set the voltage variation is too steep between adjacent data points and linear interpolation is probably too much of a simplification.)
    (LabVIEW 7.1)
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    Interpolation2.llb ‏48 KB

  • Relative Time Scale for X-Axis when creating a Line Graph in CS3?

    Is there a way to get the APPROPRIATE RELATIVE scale for the X-Axis (Category) when you're using dates?
    Example:
    If this is my data set:
                        Group A          Group B
    01/03/99                1                5
    01/04/99                11                3
    01/05/99                6                12
    11/27/07                63                54
    If I plot this in Xcel, by default, each date (x-axis) will be spaced the same distance apart. However, there is a checkbox to "time-scale" the X-Axis which will place the dates relative to one another. In other words, if we're talking about a bar graph, the first three bars would be close together on the left side of the chart, and the 4th bar would be waaaaaay on the right side of the graph.
    So, below, if 'x' is a bar, I keep getting this in CS3:
    x     x     x     x
    I want to get this:
    x x x             x
    Get it?

    Is there a way to get the APPROPRIATE RELATIVE scale for the X-Axis (Category) when you're using dates?
    Example:
    If this is my data set:
                        Group A          Group B
    01/03/99                1                5
    01/04/99                11                3
    01/05/99                6                12
    11/27/07                63                54
    If I plot this in Xcel, by default, each date (x-axis) will be spaced the same distance apart. However, there is a checkbox to "time-scale" the X-Axis which will place the dates relative to one another. In other words, if we're talking about a bar graph, the first three bars would be close together on the left side of the chart, and the 4th bar would be waaaaaay on the right side of the graph.
    So, below, if 'x' is a bar, I keep getting this in CS3:
    x     x     x     x
    I want to get this:
    x x x             x
    Get it?

  • Too many digits in log scale

    I thought I had reported it before - but couldn't find the post nor a known issue...
    I have a XY graph with plotted waveforms. All fine. Then I change the Y scale from lin to log and the mess happens, see below.
    The left image shows the graph border with a linear Y scale, the right image after changing programmatically to log scale
    Solved!
    Go to Solution.

    OK,
    I was playing more and can add some details, hopefully sufficient to reproduce the issue:
    Plotted is a Gaussian with the parameters 1.0, 3.0e-3, 2.0e-5. For these values changing map mode to log scale works correctly. Now, if I replot the waveform with changed parameters (0.999, 3.0e-3, 2.0e-5), i.e. a slightly reduced amplitude, log scale goes wrong.
    Adding the attribute of 0 precision as kindly suggested by Roberto helps to remove the many digits, but it does not help with respect to the number of labels and the issue of identical labels (see the second graph below).
    In a next step I replotted the graph, now with the original parameters, but the log scale does not revert to the correct scaling, although formally the identical function is plotted.
    If I change the amplitude parameter of my Gaussian function to 10.0 I get a different scaling, but overall it is not much better: Somehow, some decades are omitted, there is no major tick for 100000, 10000, 1000, 100, 10 - only the 1 and two times a mysterious 0. (third graph below) 

  • Is there anyway to scale the x-axis when I have an uneven interval for my values?

    It looks like this and I need the values to scale...

    Change the first column so it is NOT a header and use an X-Y scatter chart.  Also make the first row a header like:
    now select the data in the table then select the X-Y scatter from the charts menu:
    Same chart using a log scale for X:

  • How to make GNOME power management auto scale cpu frequency?

    Hello everyone, I installed Archlinux on my new Toshiba U400/H00, everything works nicely, however, I need to manually scale cpu frequency when on AC/Battery, is there a way to make Gnome automatically scale it?
    Thanks a lot!

    Maybe just go down to acpid level and do it independently of DE devs idiosyncrasies?
    For me, the following code in /etc/acpi/handler.sh does the job:
    ac_adapter)
    case "$2" in
    ACAD)
    case "$4" in
    00000000)
    echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
    00000001)
    echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    echo 499 > /proc/sys/vm/dirty_writeback_centisecs
    esac
    *) logger "ACPI action undefined: $2" ;;
    esac
    I believe the original code there tried to set fixed clockspeeds for these situations, but I find changing governor much more flexible.
    Edit: there were some ACPI-related bugs during 2.6.26-27 development cycle, it may happen that you won't get any ACPI events playing with power source. 2.6.28 cured all ACPI problems for me, but YMMV.
    Last edited by briest (2008-12-30 19:30:05)

  • Specified a 3D scale for each axis

    Hi,
    I'm plotting a 3D graph but i don't want to use the autoscale function. I would rather specified my maximum value of scale for each axis.
    How can can i achieve this?
    Thanks.
    GERARD Florian.

    Oops, forgot the attachment, Here you go
    -Paul
    Paul Falkenstein
    Coleman Technologies Inc.
    CLA, CPI, AIA-Vision
    Labview 4.0- 2013, RT, Vision, FPGA
    Attachments:
    Axis Maximum.jpg ‏17 KB

  • Cwt scale vs. frequency

    Hi!
    I'm using the CWT of the Advanced Signal Processing Toolkit to analyse a signal from accelerometers.
    Using the SYM8 wavelet over about 2000 scales gives me the resulting scalogram. FFT of the mother wavelet shows me that the center frequency(fc) of this wavelet is 0,75.
    My region of interest is between 0 and 500Hz.. 
    When I calculate the corresponding pseudo frequencies(fp) with this center frequency and the half sampling rate(fs) of 25600 I get: 
    0-500Hz results in Scale from Max to 25!
    Compared wih the spectogram I know that my information is in the region between Scale 1100 and Max.Scale....
    Can somebody tell my where my mistake is hiding?
    I calculated: fp = fc/a *fs/2
    Thank you... Steve 

    Hi!
    Thank you for your reply.
    I'm using Labview 8.5 at my University (TU Graz). I think it's the SPT 7.0 but I'm not shure.
    Attached my input signal as a txt file. I used the data as waveform file.
    Additional I added the STFT picture and the CWT Scalogram. As you can see the frequency range 0-500Hz is somewhere between Scale 1100
    and ScaleMax. 
    lg Steve 
    Attachments:
    stft.jpg ‏172 KB
    cwt.jpg ‏172 KB
    timesignal.txt ‏1625 KB

Maybe you are looking for

  • My webcam is no longer recognized by my PC

    Last night I attempted to use my webcam on my HP Pavillion dv7 Notebook PC as usual and it did not turn on. I've looked through all of the forums and I attempted to find it in the device manager as well as scan for hardware changes but nothing turned

  • Get the intersection when u know row and column in 2D array

    I am trying to get the intersection of the row and column and I am not able to do so...... for example: 123456789 <<These in array indicate the row 255555555 388888888 499997999 1234 above first element of each row represent columns........ I want to

  • Creating a New Forecasting profile for MRP

    Hi there, Please can somebody let me know how do I create a new Forecasting profile for MRP.  I want to see this in table MRPR once created.  (field PROPR). Kind Regards,

  • Reconnecting Oracle in the middel of applicaion

    I have a query regarding reconnection with oracle server in the middle of running application. on start up of my aaplication i am connecting with oracle server and its getting connected. after some time i am removing the network cable in the middle w

  • Dynamic SharePoint 2013 Dashboard Sizing

    Can SharePoint 2013 dashboards automatically scale in size based on the viewer's screen resolution? My company just began developing dashboards on SharePoint 2013 using PerformancePoint Dashboard Designer with reports built in Report Builder and Repo