LabWindows™/CVI™ Scientific User Interface Controls


Create professional measurement and automation GUIs in Ansi C without spending months on development. LabWindows/CVI delivers measurement-specific user interface (UI) components that you can drag, drop, and extend to create a custom interface to your measurement applications. These controls include buttons, knobs, slides, gauges, tanks, dials, and graphs.


User Experiences Designed for Engineering and Science

Unlike most programming environments, NI LabWindows™/CVI is designed for building test, measurement and control applications. To this end, it offers the ability to create highly technical engineering and scientific displays. Whether you are creating a simple data-logging program for the lab or a complex production test system, LabWindows/CVI provides all the tools needed to create informative and intuitive user experiences for internal or commercial use.

In addition to the standard controls you find in most full-featured programming environments, LabWindows/CVI contains many controls and indicators that resemble familiar physical instruments and are, consequently, easier for operators to understand and use.

You can show temperature using a thermometer, view a digital test vector with a digital waveform graph, and compare time and frequency domain information side by side. If you want to see voltage expressed in engineering units (10 mV rather than .01), you can. If you see something unusual in a waveform and want to take a closer look, you can interactively manipulate the graph by using the zoom tool or clicking the scale and typing new end points.

 Display measurement data and emulate physical instruments in software

Figure 1. Display measurement data and emulate physical instruments in software


Design-Time Productivity Tools

LabWindows/CVI contains a comprehensive collection of drag-and-drop controls and indicators so you can quickly and easily create UIs for your application and effectively visualize results without integrating third-party components or building visual components from scratch.

The UI control array feature lets developers group several controls into a logical set and interactively or programmatically edit and control multiple controls with ease.

Navigating complex UIs is simplified with the UI browser, which provides a tree hierarchy of all panels and their sub-components making it easy to locate panels, controls, and menu bars within a multi-panel UI.

Create Custom UIs

The quick drag-and-drop approach does not come at the expense of flexibility; with LabWindows/CVI you have full control over the look and behavior of your application user experience. Developers can customize properties and display behavior of built-in controls easily using the control attribute editor conveniently integrated into the UI editor window. Choose the best visual component to display your data, and adjust it by editing the control appearance, naming, binding, format, input range, coercion, and tooltips to make your application easier to use and understand. Power users can even create their own custom controls both interactively and programmatically.

UI customizability is not limited to the type of controls or indicators you use. LabWindows/CVI comes with two different customizable control themes. You can use the defaults for the fastest development, make LabWindows/CVI look like any other Windows application, or customize your own controls and color scheme to suit your company branding or personal preferences.

Variety of GUI Controls for Data Visualization and Design

Once you have converted your raw data into more meaningful information with the analysis tools, you are ready to visualize and interact with the results.

LabWindows/CVI offers the following UI controls:

  • Waveform, scatter, digital, intensity, and complex graphs
  • Legend
  • Switch and LED
  • Meter
  • Knob
  • Tank
  • Thermometer
  • Gauge
  • Numeric edit


Figure 2. LabWindows/CVI gauges, slides, knobs and LED's can be fully customized and controlled programmatically or interactively by the applications operator

Analog and Digital Waveform Graphs

After you acquire or generate data, or if data is readily available in a file or database, you can use a graph or chart to graphically display the information. LabWindows/CVI gives you insight into your data with the 3D graph and 2D waveform and scatter graph controls. The scatter graph control displays a graph of X and Y data pairs. The waveform graph control displays data that is uniformly spaced in one dimension. Using annotations, you can easily highlight points or ranges of interest. Both graph controls include many properties that you can use to configure the appearance and behavior of the plots.

Key graph features include the following:

  • Multiple x and y axes that are fully customizable
  • Linear and log scale
  • Multiple plots
  • Multiple cursors, which display a crosshair on a graph to mark a specific point or region on the graph
  • Plotting and charting
  • Annotations, which use range or point annotations to dynamically select regions of interest
  • Zooming and panning features so you can see different views of your data
  • The ability to zoom in and out of your data either programmatically or interactively; zoom around a point or on a selected rectangle
  • The ability to pan left and right to change the view of the graph that you see
  • Grid lines

Image Processing and Machine Vision

The NI Vision Development Module for LabWindows/CVI is designed for image processing applications. This add-on module features several visualization tools, including the capability to display and analyze pictures, images, and video in real time or offline (in .JPG, .PNG, and .TIFF files), using analog and digital, color or black-and-white cameras. 

Figure 4. Matrix code, infrared, color and grayscale images in the NI Vision Development Module for LabWindows/CVI

You can also display and analyze images from infrared cameras in real time. For example, using the Vision Development Module, you can capture images directly from a standard microscope or an atomic force microscope and make measurements directly on the image.

Edge detection on aligned nanotubes

Figure 5. Edge detection on aligned nanotubes

Additional Resources

Other Features in LabWindows/CVI
Feature Comparison Chart
Download LabWindows/CVI

The mark LabWindows is used under a license from Microsoft Corporation. Windows is a registered trademark of Microsoft Corporation in the United States and other countries.

Figure 3. LabWindows/CVI graphs and charts help users better visualize and understand acquired signals