Waveform charts plotting
I have a data acquisition VI, which acquires two sets of data as x and y values.I have problem plotting them in a waveform chart.I tried bundling them and wiring to the chart, but instead of one plot of x vs y as the data is being acquired, i get to view 2 sets of plots. How to overcome this, so as to plot my x and y values as they are being acquired in a waveform chart.Will someone help.
> ... y as the data is being acquired, i get to view 2 sets of plots. How to
> overcome this, so as to plot my x and y values as they are being
> acquired in a waveform chart.Will someone help.
If the X values are evenly spaced, then you can encode them as X0 and
dX, wire these into a cluster with the Y array, and send that to the chart.
If the values are not evenly spaced, one option is to look at the XY
chart example in examples/general/graph/charts. The example uses a
subVI to collect and limit the number of points, the data is then drawn
using an XY graph.
Greg McKaskle
Similar Messages
-
Waveform chart, plot and Dynamics Data and double data
Hello everyone !
I would like to get separate plots on the same waveform chart.
Actually, I am simulating 4 signals (but in reality, it would be signal from sensors) and I would like to get 4 plots.
In the end, I get 3 plots and no 4 plots.
It is very strange... Yet, I have selected 'Stack plots' and '4 plots shown'.
Actually, I can see the last data has been merged with the first one.
How can I fix that ?
Thank you !
Solved!
Go to Solution.
Attachments:
test5.vi 105 KBI'm not sure how you got into this state but try going into the chart properties (right click front panel chart and click Properties from menu) and under the appearance tab, unclick "stack plots", unclick "Show digital displays(s), hit "OK", then go into properties again and reselect those two boxes and hit okay. It should correct the problem.
All statements are my opinion and worth every cent you paid for them.
Tom Whitaker, CLD
"Give every man thy ear but few thy voice."
Polonius in Hamlet. -
Hi All,
Query 1:I am trying to export the Chart data(Total plots 6 ) only between the X scale Min Time and Max time limit .
But couldnt able to achieve that progammtically.
is their anyway to achieve this.
Query 2:Also ,In chart their is an right click option to export data to excel,but when using this option the data get exported in its own temporary name(iv*****.tmp),i dont want this to happen.Instead the data expored using that option should be written in a file specified by me(everyting should happen in backend)
pls suggest the best solution for above 2 queries.
Thanks,
Selvan.Hi selvan,
1) read the chart history (or better keep a history in your own shift register) and limit the data to the XMin and XMax values (read all those chart settings from its properties). Then save the data using WriteToSpreadsheetFile…
2) The right-click option is as it is. When you need different behaviour you need to program your own routine. Once you finished query 1 it will be no problem anymore to also solve query 2…
Best regards,
GerdW
CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
Kudos are welcome -
Plotting elements from an array in waveform chart
Hi all,
I am trying to plot a real time data by extracting single element from an array.
Problem is that, at some frequencies waveform chart plot perfect while at other frequencies it plots like a undersampled signals.
Any suggestions?
Attachments:
wfm.png 136 KB
wfm.vi 133 KBThe timing information comes from the data acquisition process, not the display. You should be able to get equally good display of timing information on a chart or a graph.
How many samples do you read at a time? How do you define "realtime"? Anything plotted on a graph or chart for the use of a human operator does not need to be updated more than about 10 times per second because the eye/mind system works at about that time scale. For humans a real time grahical update rate of 2 to 10 Hz is adequate. Then you will have 256 to ~51 new samples at each update.
Another issue is that both your graph and your plot have plot areas which are less than 200 pixels wide. If you supply more than [plot width] pixels to a graph or chart, LabVIEW will reduce the data to determine which pixels to plot. So your graph with 1000 X-axis values has that reduced to the 184 pixels across the width of the graph. So, regardless of the precision of the data, the "precision" of the display is limited to the number of pixels.
Lynn -
Saving array data from a waveform chart
I am using a CRIO 9004 and a 9237 bridge module to measure some strains from strain gauges. I've got one timed loop that reads the DMA FIFO and puts the arrays of values (16 data points, 4 per channel) into a queue. In the consumer timed loop a For loop scales the binary data, auto indexes it into arrays, then the arrays are merged into a 2D array for the four channels displayed on a waveform chart . Everytime the consumer loop runs it indexes 4 data points (per channel) yet the waveform chart plots them in a consecutive manner and doesn't overwrite the previous four. If I convert the arrays to waveform arrays I don't see anything on the waveform chart.
If I pass the 2D array of data to a array indicator inside or outside the consumer loop I get only 16 data points. I want to save the information that appears on the waveform chart after the consumer loop but because I'm not using waveform data type I can't use the write waveforms to file vi. The waveform chart history buffer has been set to 195360.
Idealy we will run the four channels for 120 seconds charting the data and saving the data. The minimum data rate is 1613kS/s (403 per channel) The data can be saved after the loops have finished gathering and processing or while they are running. I noticed when I tried to write to TDMS it slowed the consumer down. Same thing if I use a shift register with the volume of data.
I suspect I'm not sending data to the chart in the correct manner ( usualy takes two attempts to "clear chart" using shortcut menu). I'm not too familiar with timed loops /producer consumer loops and just tried to put something together based on examples.
I've attached my host vi and front panel screenshot.Hope they appear attached this time.
Attachments:
Basic DMA (Host).vi 444 KB
screenshot2.jpg 113 KB -
I have a waveform chart plotting Voltage values against time. I have to store both the values into a Spreadsheet file. I am able to store the values on Y axis (vOLTAGE), but not the time values. How cal i do so?
One way is to build a waveform data type with Build Waveform function, add t0 and dt info, and use the Export Waveforms to Spreadsheet function. The dt, (delta time) should be readily available from the sampling rate of your data acquisition. You could also create an array of time values, append this array to your Y array for a 2D array and use the 2D input of Write to Spreadsheet file. There is a function in LabVIEW called WDT Get Waveform Time Array that shows how to create an array of time values.
-
How can I change the color of plot in a waveform chart and graph?
There are 4 plots in a waveform chart, from plot0 to plot3, and I want to chang the color of plots dynamicly up to my needs when the VI is running.
For example, as show in the picture, i want to set the plot0 as RED, and plot1 is BLUE, plot2 is YELLOW, plot3 is GRAY.
If there is only one plot, i can change it's color, however when there are more than one plot, it fail.
How can I do it?
Thanks
Attachments:
waveform.JPG 61 KBHello MilkyStone,
first you have to set the active plot, then change its color (or other properties). All that is done using property nodes.
Best regards,
GerdW
CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
Kudos are welcome -
Only first plot of waveform chart has run-time menu
Hello again all you helpful forum-goers!
My multi-plot waveform chart is working decently well, but now for some reason only the first plot in the plot legend displays a run-time customization menu when I click on it while the VI is running (allowing me to select the plot color, etc.). All the other plots do nothing when I click on them. I do not have any mouse-down events or filter events of any kind in my VI. I programmatically set the number of plots and the size of the plot legend, along with each plot's name, y index, and color. Any ideas as to what might be going on?
Thanks a bunch as always!
-Joe
Solved!
Go to Solution.Okay, hopefully this will help get some more thoughts / answers flowing. I've copied my strip chart from my actual VI into a test VI, and it still exhibits the problem. On the other hand, I have created a new strip chart from scratch, and it works fine. I have attached both VIs here for you to see. My guess is that some property of the first chart is set incorrectly or something, but I cannot figure out which one (and there are so many!).
Any assistance you can give would be appreciated. The challenge is to get the chart in the first VI working (plots other than the first responding to a mouse click to change their color or other attributes), via changing some attribute of the chart (and being able to tell me which one you changed!).
Thank you again for anyone who can look into this.
-Joe
Attachments:
Test StripChart color selection not working.vi 17 KB
Test StripChart color selection working.vi 12 KB -
I was under the assumption that waveform charts in LabVIEW 6i atomaticly displayed wired data with respect to time in seconds. However, I noticed that my chart plots data with respect to the number of data points my VI has generated. Is there anyway to fix this so that the chart actually plots vs. time. I've attached VI. The CIN is to a Computerboards Inc, thermocouple. Any help would be appreciated.
Attachments:
tepTInScan.VI 73 KBIt appears that the chart is set to display relative time but since you don't have the acquisition in any kind of a loop, your relative time is pretty meaningless. You've got the dX of the chart set to be one, so yeah, at the beginning, the x scale numbers are going to be the same as the number of aquisitions until you've run it more than 60 times. At this point, you'll see the x scale show minutes and seconds. If you want absolute time for the x scale, look at the examples Real-Time Chart.vi or Variable-Time Chart XY.vi.
-
Waveform Chart NOT allowed inside array of clusters; Dynamic plot stacking?
The NI Developer Zone has a VI that does something I want - dynamically
stack plots in a useful way. Unfortunately, I would like those plots
to actually be Waveform Charts and NOT Waveform Graphs (as the
documentation specifies but LIES!)
A little further experimentation shows you that it is seemingly not
possible to make an array of clusters that contain Waveform Charts!
Why?
Alternatively, are there any other ways to smartly show many signals at
once? I have found multiplots to be frustrating as it is difficult to
assign the number of plots once you start the VI (hence the existence
of Dynamic Stack Plots).
DynamicStackPlots here:
http://sine.ni.com/apps/utf8/niepd_web_display.display_epd4?p_guid=B123AE0CB938111EE034080020E74861If you have LabVIEW 8.0, have a look at the new "Mixed Signal Graph"
(see e.g.: http://zone.ni.com/devzone/conceptd.nsf/webmain/C6B79FA61959D9D68625706E006F7462 )
LabVIEW Champion . Do more with less code and in less time . -
Hello,
On a waveform chart, 4 signals need to be plotted based on the status of 4 boolean inputs. Eg. if the first boolean input is true, the first signal needs
to be visible on the waveform chart; if the first boolean input is false, the first signal should not be visible on the waveform chart and so on. This can be
done on LabVIEW desktop using the Waveform Chart Property Nodes 'ActPlot', 'Plot.Visible' - a sample VI "BundleSignals_Select_Desktop.vi" is attached for
reference.
But on PDA, since the Waveform Chart Property Nodes 'ActPlot', 'Plot.Visible' are not supported, some other method has to be used. I have done the
selection/de-selection of these signals using 'Insert', 'Delete' array functions as shown in the attached VIs "BundleSignals_PDA.zip" which works, but the
problem is that the colour of these signals do not work as desired when the selection/de-selection of these signals is done - It is required that the first
signal should always appear in White color, the second signal should always appear in Red color, the third always in Green color & the fourth always in Blue
color.
I hope i have made myself clear of the problem. Has anyone faced this problem before & is there a solution?
Note: Version of LabVIEW that we are using: LabVIEW 8.5 Professional Development System for Windows Vista/XP/2000 and LabVIEW 8.5 PDA Module for Windows
Mobile.
Thanks & Regards,
Subhashini
Attachments:
BundleSignals_Select_Desktop1.vi 25 KB
BundleSignals_PDA.zip 26 KBUnfortunately the only alternative to using property nodes is to set the properties manually on the development environement. The limited size of memory does limit us in terms of features for the module.
Mehak D. -
Plotting multiple graphs on one waveform chart with dynamic data types
I'm trying to put multiple graphs on one waveform chart and having data agreement errors. I'm wondering if it has anything to do with the fact that dynamic data is being used (I've had no problems with other datatypes in the past). Does anyone know how to correct this problem? I've attached the following .VI. There will be plenty of .VIs on the bottom that won't load, but they are not consequential for this problem.
Thanks!
Brian
Solved!
Go to Solution.
Attachments:
Stiffness Control V1.vi 119 KByou could use stacked plots by right clicking on the chart and clicking on the stacked plots and than on the front panek you can put a bundle function on the FP and hook your signals up
Harold Timmis
[email protected]
Orlando,Fl
*Kudos always welcome
Attachments:
multiplotwaveform.JPG 138 KB -
Plotting data with multiple y-axis using waveform chart
I am using LabVIEW 7.1 and am simply trying to split my data on one waveform chart using 2 Y axis. One goes from 0-150 and the other from 800-1000. I want them to graph on the same chart, and I have selected 'duplicate scale' when I right click on the chart, as instructed in the labview manual, but both of my data streams are still only connected to one of my axis. I can't get it to recognize that one data stream should go on one axis and the other stream should go on the other axis. Can someone help please?
Right-click in the plot legend one plot. In the context menu select y-axis and after the axis you want for this plot. The scale is changed directly.
There is an image of the context menu attached.
I hope this helps
Greetings
shb
Attachments:
two y-axis.png 16 KB -
How do you change the Number of Plots Shown property of a Waveform Chart at runtime?
Is there any possible way to change the Number of Plots Shown property
of a Waveform Chart at runtime? Thy Dynamic Stackplots example is
way to limited.....There's a couple of ways to do this -
1. Manage the data going into the chart to only be what you want displayed
2. Use property nodes. Specifically, the Plot.Visible node. (LV 7 example attached).
2006 Ultimate LabVIEW G-eek.
Attachments:
MultiPlots.vi 48 KB -
Deleting plot from Waveform Chart
How can I delete a plot from a Waveform chart using the chart's Attribute
Node?
Thanks!On Thu, 23 Mar 2000 16:02:22 +0100, "Carmafresh"
wrote:
>How can I delete a plot from a Waveform chart using the chart's Attribute
>Node?
>Thanks!
>
Set the History attribute to nothing.
Regards,
Steve Drake
Maybe you are looking for
-
I am using the "Write To Measurement File" function inside a while structure and would like to incorporate the iterative value from the while-loop as part of the file name. I'm not sure how to do it. Any suggestions?
-
If you have a table with a unique index and ignore_dup_key = on and you INSERT rows into that table with an ORDER BY clause (because you want to control which of the duplicate key rows gets inserted), the wrong row gets inserted in SQL2012. It work
-
Metadata handling in ProxyElement (inconvenient)
Hello! I've come across the inconvenience when working with metadata in ProxyElement. 1) Every element that is proxied gets ProxyElement metadata values (that have been set before) on permanent basis and not loses it after being unset as a proxied el
-
Hello, has anyone developed a WebDynpro based ESS application using a central FPM DC and views from a multitude of different DC? Please help. Thank You Tom
-
Operation could not be completed. (OSStatus error -54.)
What's this mean? "Operation could not be completed. (OSStatus error -54.)" I got it while trying to backup files via Backup. They did not copy and did not backup. What can I do to fix it? Thanks!