LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Strange Waveform Chart Update Behavior

Solved!
Go to solution

I'm having a strange issue with a Waveform Chart in a LabVIEW 8.5 VI.  For some reason, whenever our chart needs to autoscale the Y axis, the entire chart repaints.  This causes a noticeable delay and is visibly distracting. At first, we thought it was an issue with the point style, as we only see this issue in our application when using a style that uses individual points for each data point, rather than connecting the points with lines.

 

To test, I made a sample VI to ensure that it wasn't a performance issue with any of our other code, and dragged and dropped the chart from our app into a new VI.  I made a simple Block Diagram that simulates data being written to the chart.  I was somewhat relieved when I saw the same problem, as it made me think it wasn't our code that was the issue.

 

Then, on a whim, I decided to replace it with a "new" waveform chart.  After setting up a few things, I tried to replicate the behavior, and I cannot!  I've tried going through all of the settings to make the two charts as identical as possible, but I can't figure out why one shows the repainting issue, whereas the other does not. 

 

I've included both VIs and would love to know if other people see the issue, and if anyone has any idea as to what is causing it.  To see what I mean, turn the Amplitude and Bias knobs to force the graph to repaint.  GraphUpdateTest.vi will NOT show a problem, whereas GraphUpdateTest2.vi will.

 

Thanks in advance!

 

- Ron

0 Kudos
Message 1 of 10
(4,266 Views)

I ran both of the VIs and I think I see what you are talking about.  I couldn't find any differences in the properties, it looks like both graphs are the same to me in that respect. The only other thing I notice is that the background for the graph that shows the delays has a transparent color.

 

So just out of curiousity I changed the color on GraphUpdateTest2.vi back to gray and it looked like the performance changed...but I barley notice the repaint in the first place, so this may be an subjective view from my eyes only.  Maybe you can try it and verify if I'm seeing it correctly.

 

-Jonathan 

-----
LV 8.2/8.5/8.6 - WinXP
Message 2 of 10
(4,254 Views)

Wow, that's it.

 

I made the background of the graph that doesn't exhibit the behavior transparent, and it showed the repaint issue.

 

I made the background of the graph that DOES exhibit the behavior gray, and it removed the repaint issue.

 

WHAT THE HECK IS THAT ALL ABOUT?!!?

 

Being forced to have a goofy (no offense) "3D" background around the graph seems like a sub-optimal solution to me.

0 Kudos
Message 3 of 10
(4,236 Views)
Is it possible to paint a Waveform Chart, or any object in LabVIEW, for that matter, without it having the "3D" shading on the edges?  We use transparency in our applications to remove it, but as that apparently causes this repaint issue, is there any other way to remove the goofy shading?
0 Kudos
Message 4 of 10
(4,226 Views)

Have you tried editing the control using 'Advanced->Customize..' tool?

 

You can edit each individual box of the control, might be another way to change it. I think you can add images to that particular box to make it a flat background.  I haven't used it too much, but it might have the potential for doing what you want.

-----
LV 8.2/8.5/8.6 - WinXP
0 Kudos
Message 5 of 10
(4,216 Views)

I briefly tried the Customize tool, but I don't have much experience with it.  I was unable to find a straightforward way of removing the background or the 3D elements.  I'll try and look into adding an image instead, thank you for the suggestion.

 

Is there any way I can report this issue as a bug?  I have to say that a transparent background affecting graph performance is slightly ridiculous.

0 Kudos
Message 6 of 10
(4,211 Views)

Hi Ron,

 

To get to the heart of your complaint, by repainting issue do you mean at the beginning before the charts display you see this issue? Like the bottom stacked chart displays and then the top, while in "GraphUpdateTest.vi" both charts update at the very same time. I actually timed how fast it takes until both vi's start finish the total graph and they finish at the same time.  You are correct that this may bug and as soon as I can confirm the exact effects of the issue then I can go and file a corrective action request for this.

 

Regards,

National Instruments
RIO Embedded Hardware PSE

CompactRIO Developers Guide
Message 7 of 10
(4,188 Views)

Thanks for the reply.

 

It's not before the charts display, it's whenever the charts are forced to do an adjustment of the y-axis autoscaling.  Rather than smoothly adjusting, it's almost as if the contents of the graph get redrawn, then the "old" information is removed.

 

Just to be clear, I'm using LabVIEW 8.5.

0 Kudos
Message 8 of 10
(4,184 Views)
Solution
Accepted by topic author ronbrown

Hi Ron,

 

I was able to see what you are talking about, and I created a corrective action request for this issue. Thanks for the bug catch.

National Instruments
RIO Embedded Hardware PSE

CompactRIO Developers Guide
0 Kudos
Message 9 of 10
(4,164 Views)

ronbrown wrote:
Is it possible to paint a Waveform Chart, or any object in LabVIEW, for that matter, without it having the "3D" shading on the edges?  We use transparency in our applications to remove it, but as that apparently causes this repaint issue, is there any other way to remove the goofy shading?

Just as an update to this, in order to get around the 3D shading of the modern controls, I used a Classic Waveform Chart instead, which tends to blend in better with the application that housed the previously-transparent chart. 

 

As a quick test, I also checked to see if the Classic chart suffered the same transparent background repaint issue, and it does.  In fact, it almost seems WORSE than the modern chart, though this could just be an issue with the length of the x-axis.

0 Kudos
Message 10 of 10
(4,121 Views)