2 plots in 1 problem

Hello, i have a problem. I need to plot 2 plots on 1 to compare their FFT. I want to have 2 plots with the same styles as u can see at plots named FFT2 and FFT3, but when i compare them at plot FFT one of them have different line style. Can someone take a look on it?
Solved!
Go to Solution.
Attachments:
plotproblem.vi ‏73 KB

Sure you can. You just have to tell it which plot you want to have which bar style.
Unfortunately, there are only 3 bar styles available: 1 pixel wide, "mostly" filling the available space, and totally filling the available space.
Cameron
To err is human, but to really foul it up requires a computer.
The optimist believes we are in the best of all possible worlds - the pessimist fears this is true.
Profanity is the one language all programmers know best.
An expert is someone who has made all the possible mistakes.
To learn something about LabVIEW at no extra cost, work the online LabVIEW tutorial(s):
LabVIEW Unit 1 - Getting Started
Learn to Use LabVIEW with MyDAQ

Similar Messages

  • Stacked plots problem in exe

    Hi,
    Ive got a problem with creating .exe application where 2nd chart functioning properly.
    2nd chart is in subpanel as a stacked plot. I pass via main form numbers of stacked plots. In builder it works perfectly, in .exe not at all..
    Any ideas?
    Attachments:
    WykresOnlineCAN.zip ‏73 KB

    Ok sorry I didnt explain well whats the point.
    There is no problem with properly "refreshing"  of subplot - works fine even without static reference(but thanks anyway, I missed that).
    I cannot changed the number of staked plots in the screen(constanly 1) - in editor mode it changes according as number of flaged plots.
    The problem is show in the pictures below.
    Attachments:
    editor mode.png ‏60 KB
    in exe.png ‏57 KB

  • How to save data in a 4D array and make partial plots in real time?

    Hi, this is a little complex, so bear with me...
    I have a test system that tests a number of parts at the same time. The
    experiment I do consists of measuring a number of properties of the
    parts at various temperatures and voltages. I want to save all the
    measured data in a 4-dimensional array. The indices represent,
    respectively, temperature, voltage, part, property.
    The way the experiment is done, I first do a loop in temperature, then
    in voltage, then switch the part. At this point, I measure all the
    properties for that condition and part and want to add them as a 1D
    array to the 4D array.
    At the same time, I want to make a multiple plot (on an XY graph) of
    one selected property and part (using two pull-down selectors near the
    XY graph) vs. voltage. (The reason I need to use an XY graph and not a
    waveform graph, which would be easier, is that I do not have
    equidistant steps in voltage, although all the voltage values I step
    through are the same for all cases). The multiple plots are the data
    sets at different temperatures. I would like to draw connection lines
    between the points as a guide to the eye.
    I also want the plot to be updated in the innermost for loop in real
    time as the data are measured. I have a VI working using nested loops
    as described above and passing the 4D array through shift registers,
    starting with an array of the right dimensions initialized by zeroes. I
    know in advance how many times all the loops have to be executed, and I
    use the ReplaceArraySubset function to add the measured properties each
    time. I then use IndexArray with the part and property index terminals
    wired to extract the 2D array containing the data I want to plot. After
    some transformation to combine these data with an array of the voltage
    values in the form required to pass to the XYGraph control, I get my
    plot.
    The problem is: During program execution, when only partial data is
    available, all the zero elements in the array do not allow the graph to
    autoscale properly, and the lines between the points make little sense
    when they jump to zero.
    Here is how I think the problem could be solved:
    1. Start with an empty array and have the array grow gradually as the
    elements are measured. I tried to implement this using Insert Into
    Array. Unfortunately, this VI is not as flexible as the Replace Array
    Subset, and does not allow me to add a 1D array to a 4D array. One
    other option would be to use the Build Array, but I could not figure
    out if this is usable in this case.
    2. The second option would be to extract only the already measured data
    points from the 4D array and pass them to the graph
    3. Keep track of the min. and max. values (only when they are different
    from zero) and manually reset the graph Y axis scale each time.
    Option 3 is doable, but more work for me.....
    Option 2: I first tried to use Array Subset, but this always returns an
    array of the same dimensionality of the input array. It seems to be
    very difficult, but maybe not impossible, to make this work by using
    Index Array first followed by Array Subset. Option 3 seems easier.
    Ideally, I would like option 1, but I cannot figure out how to achieve
    this.
    Your help is appreciated, thanks in advance!
    germ Remove "nospam" to reply

    In article <[email protected]>,
    chutla wrote:
    > Greetings!
    >
    > You can use any of the 3D display vi's to show your "main" 3d
    > data, and then use color to represent your fourth dimension. This can
    > be accessed via the property node. You will have to set thresholds
    > for each color you use, which is quite simple using the comparison
    > functions. As far as the data is concerned, the fourth dimension will
    > be just another vector (column) in your data file.
    chutla, thanks for your post, but I don't want a 3D display of the
    data....
    > Also, check out
    > the BUFFER examples for how to separate out "running" data in real
    > time.
    Not clear to me what you mean, but will c
    heck the BUFFER examples.
    > As far as autoscaling is concerned, you might have to disable
    > it, or alternatively, you could force a couple of "dummy" points into
    > your data which represent the absolute min/max you should encounter.
    > Autoscaling should generally be regarded as a default mode, just to
    > get things rolling, it should not be relied on too heavily for serious
    > data acquisition. It's better to use well-conditioned data, or some
    > other means, such as a logarithmic scale, to allow access to all your
    > possible data points.
    I love autoscaling, that's the way it should be.
    germ Remove "nospam" to reply

  • Multi plot cursor

    Dear All,
    I am working on Mixed Signal Graph with Multi plot cursor.
    My target is to move the cursor on X axis time scale and get the y axis values of all the plots.
    i got some ex. on forum but i am facing a typical problem explained as follows:
    By chaning the cursor plot i am getting the y axis values for each plot.
    The problem is that the values are continuously changing of the plot y axis value automatically, ans also the values of the respective plot does'nt match all the time, it changes.
    I have attached a example, in that the values of the respective plot changes every time.
    Am i missing anything, please guide.
    Regards,
    Shrek
    Attachments:
    Mixed Signal Cursor.vi ‏34 KB

    Here is a quick mod .. don't know if it solve your problem, but I get constant values
    Will work only if all plots have the same lenght ...
    Greetings from Germany
    Henrik
    LV since v3.1
    “ground” is a convenient fantasy
    '˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'
    Attachments:
    Mixed Signal Cursor.vi ‏27 KB

  • How to make sure plots in xy graph are present?

    Hi community,
    since updating to LabVIEW 2014 this week I have an issue with code that worked previously (or didn't but the problem was unnoticable).
    As shown in the example llb I created to showcase the issue, I'm filling xy graphs with quiete some data and then programatically colour the plots.
    The problem is that if there are too many plots then the property nodes that are to colour the plots thow errors as if the corresponding plots were not present in the graph yet - even though I used a single frame flat sequence structure to try to make sure data is written to the plot before trying to colour them.
    Maybe this would have happened in LabVIEW 2013 too - but the threshold for the number of plots was higher. All I can say is that I observed this with data sets that worked fine in LabVIEW 2013.
    To reproduce simply run "colour the graphs.vi" with sufficiently high values for "numerisch" and "numerisch 2" (50 on my machine may be more on yours). I left the error out terminals of the property nodes unwired so you get taken to the right position when the error occurs.
    Can I somehow check whether all plots are in the graphs yet? That way I could introduce a delay that makes sure I don't try to colour graphs that aren't there yet - regardless of the speed of the target PC.
    Has xy graph behavior changed in LabVIEW 2014? Or maybe its performance?
    Best regards
    Florian
    Solved!
    Go to Solution.
    Attachments:
    colour.llb ‏194 KB

    Florian,
    i cannot run your example as it requires some VIs from a LAVA-library (which i dont have installed).
    Nevertheless, there are some questions i am stumbling about:
    1. Why do you use a local variable rather the terminal to pass all plots to the indicator?
    2. If you place a wait function in the sequence frame which waits longer than the expected time for passing the data, does the error still occur?
    3. Do you run into the error if you enable panel updates before coloring the plots in order to slow coloring down?
    I can imagine that you have a race condition against the UI thread. The local variable (just like the terminal) has a buffer where the data is copied to. The UI thread will retrieve the data as soon as it is ready. I would expect the coloring to require the data be present in the UI thread already (in order to "acknowledge" the plot). So if, for any reason, the UI thread only cought 98% of all plots when you start recoloring, you race against the transfer of the last 2%.. depending on the UI thread execution speed, you can run into the error or maybe not.
    That is the reason why i want you to test for waiting times or slowing down the coloring.
    Norbert
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • How to solve the plot if shown twice than original data

    Dear sir,
    I am kunvar yadav, i am using Labview software.
    Here i going to plot multi plot in single plot. but the problem is it that i am applying the data of 18 days, but in output result shows data of 36 days.
    Here i have attache original file data file and programme.
    Attachments:
    TEst.txt ‏40 KB
    TEST new.vi ‏346 KB

    Use a graph instead of a chart (or run the program only once). Whenever you run the program using a chart, the same data is appended to the chart history, duplicating the data.
    (This is a plain LabVIEW question. Why did you post it in the Mathscript forum?)
    Many things could probably be done simpler....
    LabVIEW Champion . Do more with less code and in less time .

  • Get plot number for cursor in "Cursor Plot" = -1 mode (snap to any plot)

    I have a XY graph with multiple plots. For my cursors the "Cursor Plot" property is set to -1 so that the cursor can snap to any of the plots. My problem is that I need to get the plot number the cursors is currently associated with. HOw can I do that?
    thanks for any tips!
    klaus

    Hi Klaus,
    there is a property node for that.
    I've attached an example.
    Regards
    DianaS
    Attachments:
    XYPlot Cursor.vi ‏18 KB

  • Polar plot of a data matrix....help is needed

    Hello,
    I'm working on an Ultrasound project, the data coming from the device is transmitted through a USB driver to the PC. I made a VI, that open a connection with the USB device and recieve the data. The coming data are recognized by the LabVIEW as stream of strings, so, i converted the data into a bytes using "string to byte array" function, then I used the function "reshape array" to reshape the data bytes into a 512x64 matrix which represents the no. of samples per ultrasound line times the no. of ultrasound lines.
    I plotted the data on an intensity graph function and it worked, but the problem is that the data or the matrix must be plotted as a polar plot, not as a cartesian plot.
    The problem is that I want to convert each single pixel (byte) of the (512x64) matrix from having (x,y) coordinate into a pixel that has (r, angle) coordinate.
    can you help me plot these data in a polar plot. If any body has any suggestions please help.
    best regards,
    Underzero.
    Attachments:
    US_VI1.PNG ‏17 KB

    Multiple posts: keep discussion to this thread: http://forums.ni.com/ni/board/message?board.id=170&thread.id=337220

  • Plotting data

    Dear All,
    To plot my data I have tried two different methods: 1) one point at a time using PlotStripChartPoint(..) on a StripChart; 2) 10 points at a time by creating first a waveform and then plotting it using PlotStripChart(..) on a StripChart. I tried to plot my data inside a while_loop that must last 1 msec. Both plotting methods created problems because they delayed the while_loop.
    I wonder whether anybody can suggest me a better (faster) way for plotting my data.
    Thank you very much for your help.
    proman

    Hi Proman,
    I am afraid that you are way too optimistic: a refresh rate of 1000 plots per second seems too fast for me, whatever method you choose. Do you really need to refresh your graph every one millisecond? Or do you need to capture a data point every millisecond? Even the latter may not be guaranteed on regular Windows systems (no real time OS). One possibility to improve things might be to consider two threads, one responsible for data capture, and one for display. There is (at least) one example in the CVI distribution that might be of interest, BuffNodataLoss.
    Wolfgang

  • Polar plot line color

    Hello
    I have three vector plotting using polar plot.vi the problem is when I tread to shift the line color, only use black, I need three diferents colors any suggestion?. I put a picture with my block diagram.
    I would like too chance the line width how to I can realice this using mi VI?
    thanks
    Danilo

    Abel_Souza wrote:
    Hi Danilo,
    I think you can use color box contants in a case structure, each case sent one color constat, so you can select colors when you select a case on case structure.
    Regards,
    Well that is part of the story but the picture input tunnel should be changed to a SR if you wnat more than one plot.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Eps C++ parser

    Hi all,
    I am not sure if this question belongs here, but I guess this forum should be the most appropriate. I am working with eps (encapsulated postscript) files and was looking for a C++ parser which could parse such files. I tried looking on the web but couldn't find anything of help. Actually, what I want is a way to compare 2 eps files to figure out the objects that have been added or deleted. Is there a way to do so?
    Thanks,
    Atul

    Hi Chris,
    Thanks for the reply. Ghostscript seems like a viable option . About the latter half of my problem, let me explain in detail. Let's say we generate a plot using some application (MATLAB for example) which consists of dots and lines and save it as an eps. We then import this plot into a software like Illustrator or Canvas to beautify the plot. The problem arises when the original plot (the one generated in MATLAB) changes for some reason. That in turn would mean repeating the entire steps again (Doing the same beautification to the plot in Illustrator or Canvas all over again). Is there a way by which I can know what new objects were added to the eps so that I can beautify only those keeping others intact? And all this needs to be programatic
    Hope I was clear!
    Best,
    Atul

  • Any help regarding Graph cursor?

    Hi All,
    I am working with a multi plot graph and i am using a single cursor associated with all the plots.
    In my application ,from the 10 plots user can select and view selected no of plots
    ie,after execution it displays 10 plots now the user use some on/off buttons to view the selected plots.
    My problem occurs related to cursor.
    Some plots coincide(say plot1 and plot2),so even when i am not viewing the plot1 and only viewing plot2
    the cursor legend shows as plot1 at some points where plot2 is also having value.
    And if i am not viewing plot3, but i move the cursor through that location it shows plot3.
    Can anybody help me to soft this? 
    Thnks....

    Hi
    taking a stab in the dark,as there no code to understand,
    suggest you check in debug mode the cursor properties as your perform the selected operations.
    apart from that its difficult to guess
    xseadog

  • Atomic IMU and Error - 1073807246

    Hey everyone,
    I'm trying to construct a vi to read from multiple atomic IMUs for an aerospace university project.
    I've got the vi which is attached to the bottom of this code.
    Now, the imu is set up using BR@Y terminal so I know that it's sending the data and when I go into the Instrument I/O assistant and press the 'read and parse' tab then the individual readings come out as I expect them. The device is connected through USB and when looking at the individual readings (count, accel x etc) it comes out fine.
    My problem is that I don't understand how to get all of the data from there to running continuously so that I can plot all of the accelerations on one graph and all the rates on another graph. I have the two graphs and my issue is that firstly I cannot attach the waveform graphs to any of the readings.
    Furthermore, when I press 'Run' the program returns the error:
    Error -1073807246 occurred at Property Node (arg 1) in IMU Reading.vi:Instance:0->IMU Reading.vi
    Is this because of a timeout? I can;t understand it since if I run the program in the Instrument I/O assistant then it works well and gives me the data I am looking for.
    I'm not using DAQ since my device has no drivers and works fine over USB.
    To summarise, I want the program to take the data coming in over the USB (as correctly parsed by the Instrument I/O assistant) then plot the £3 accelerations v count" on one graph and the "3 body rates v count" on another graph.
    The next step is to get the program to write all of the data to a file but that is for another day I feel... :s
    Any help would be very much appreciated.
    Aryeh
    Attachments:
    IMU Reading.vi ‏84 KB

    Dear rubberhedgehog
    I recomend you to use the Instrument I/O assistant because I don´t think that you could find any drives for your atomic IMUs for labview.
    Without the knowledge of the not functioning code it is not easy to find out what causes the error.
    If your code is working like posted try to look on the XY Multi Plot.vi in Help>Find Examples. It should help you to resolve your problem with the graph plotting.
    The problem in your code is also that you have a graph which shows all the available data only once, and you enter only one element in every loop. That is why you would need to use a chart which remembers the previous data and add the new data to the plot. In your case you need to use XY graph to be able to show the count on one axis and i.e. the acceleration on the other. If it is enough for you to have only the final data and not see the graph during the measurement you only need to put the XY graph out of the while loop and create an array from all measured data. Beter would be to use a shift register whit an updating array and show the whole array in every loop on the graph. You could remember all elements in the shift register and in every loop ad new items to the array.
    I hope to help

  • Spectrogra​m with PXIe-5646r VST

    Hello I am using a PXIe-5646r vector signal transceiver to take spectral measurements. I am using it similarly to a spectrum analyzer, as in I’m displaying the FFT and a waterfall plot. 
    My problem is the waterfall plot or spectrogram. I can get something that looks and behave similar the spectrum analyzer, using a intensity chart, however every time the chart updates I get a discontinuity of some sort have attached a figure to illustrate this issue. 
    What I’m looking for is something similar to what I have seen in software defined radio (SDR) setups were you have say the FM frequency band  you have a waterfall display showing what frequencies are transmitting. I have also attached a screen grab of this. I haven’t been able to find a LabVIEW example of how they do this so I’m not sure where to start.
    Also I have attached my attempts to use a STFT vi. To display the waterfall display using intensity charts. This is a modified version of the spectrogram and spectral measurements vi =. Any help or directions to go with this would be much appreciated
    Thanks
    Jeremy  
    Attachments:
    SDR_example.jpg ‏281 KB
    waterfall plot with intensity chart.PNG ‏230 KB
    STFT_mod1.4.vi ‏37 KB

    Hey Jeremy,
    I am not 100% sure about the source of the discontinuity, but it could be related to how you are sampling the data.  It looks like you are taking 2 ms chunks of data for each capture, then trying to string them together (see the Configure Number of Samples VI) .  The problem with taking 2 ms captures is that the you will miss data in between captures.  There are two problems with that:
    1)  Missed data-  I don't know anything about the signal of interest here, but the signal could appear and disappear during the down time of the VSA.
    2)  Change in frequency content-  During that down time, the frequency content of your signal may have changed substantially.  If it has, it would likely appear as a rapid jump/discontinuity on your chart.
    I would recommend performing a continuous acquisition as in the attached example, then add a parallel loop to perform the FFT's over time.  Again, not guaranteeing this will fix the problem, but likely worth testing.
    Thanks,
    David B
    National Instruments
    Applications Engineer
    Attachments:
    RFSA Acquire Continuous IQ.vi ‏30 KB

  • Graph-legends

    Hi
    I am displaying a graph with changing numbers of plots. The problem is that
    I cannot find a way to change the number of legends shown for the plot.
    There seems to be no attribute node and I can only specify it at
    design-time.
    For example: The HTV (Historical Trend Viewer) in BridgeView allways shows
    only as many legend-entries as there are plots.
    Does anyone know how to control the number of legends shown
    programmatically?
    Thanks

    How about changing the color of the legend entries to the background color?
    They are still there but invisible.
    John
    Stefan Schirmer wrote in message
    news:[email protected]..
    > Thanks for your reply but I think there is a misunderstanding of what I'm
    > trying to do.
    >
    > I want to programmatically control the number of legend-entries for a
    > waveform-chart.E.g. Plot 1 to Plot 5 and then change the legend so it will
    > only display Plot 1 to Plot 3 etc. Right now I allways see as many legend
    > entries as defind at design-time.
    > In other words I want to 'resize' the legend so it displays only as many
    > entries as I want.
    >
    > Stefan
    >
    >
    > "Croll, Andrew [SKY:1V43:EXCH]" schrieb
    im
    > Newsbeitrag news:[email protected]..
    > > Stefan Schirmer wrote:
    > >
    > > > Hi
    > > >
    > > > I am displaying a graph with changing numbers of plots. The problem is
    > that
    > > > I cannot find a way to change the number of legends shown for the
    plot.
    > > > There seems to be no attribute node and I can only specify it at
    > > > design-time.
    > > > For example: The HTV (Historical Trend Viewer) in BridgeView allways
    > shows
    > > > only as many legend-entries as there are plots.
    > > > Does anyone know how to control the number of legends shown
    > > > programmatically?
    > > > Thanks
    > >
    > > what happens to the plots that disappear? If you are just plotting,
    say,
    > a
    > > blank array, then that might be your problem. zero is not a null entry,
    > it is
    > > an entry. Perhaps if you had some sort of loop that would only attach
    > useful
    > > arrays to your graph than this unpleasentness could be avoided.
    > >
    > > just a thought.
    > >
    > > Andrew B. Croll
    > >
    >
    >

Maybe you are looking for