INT, Inc.
2901 Wilcrest, Suite 100
Houston, Texas 77042
Toll Free 1 877 4-CARNAC
Phone:1 713 975-7434
Fax: 1 713 975-1120
E-mail: intinfo@int.com

 

Plot Toolkit

The Plot components can be used for general plotting purpose, to display XY-plots for example, or for more domain specific applications, including contour, seismic or log displays. Some of the main features provided in the Plot Framework are described below:

Flexible Design  - The Carnac Plot Framework provides two levels of functionality. The first level consists of the plotting infrastructure. In order to be able to display high performance and somewhat complex scientific visual displays, the plotting infrastructure was designed to support the most demanding requirements of low-level application framework programmers. The components of the plotting infrastructure provide great flexibility and full functionality at the expense of a somewhat more complex API. The second level consists of higher-level components built on top of the plotting infrastructure. These components were designed for those who wish to quickly display standard looking plots with a minimum of effort. The layers aren't opaque, allowing the programmers the ability to use the higher-level components, while still providing access to the plotting infrastructure when needed.

Axes and Grids  - The Carnac Plot Framework provides extensive axis support, including linear and logarithmic axes, axes with fixed increments or adaptive axes. Instead of being a single object with a multitude of properties however, axes and grids are described by multiple objects that can be used as building blocks. The flexibility of the design is further enhanced by the fact that the user is allowed to add his own components by implementing the documented interfaces.

Plot Layout  - A set of objects with simple API's is provided to facilitate the construction and modification of single or composite plots. A plot is usually a combination of single or multiple data frames, each surrounded by a number of axes and/or annotation such as titles, headers or footers. The Plot Layout controls the alignment of the plots, the behavior during resize operations, and the dynamic addition and removal of plots.

Overlays - Thanks to Carnac sophisticated view layer management, the Plot Framework allows plot views to be stacked on top of each other to create powerful overlays. Cache layers can be inserted between plot views to minimize redrawing when editing a layer.

Plot Spaces  - Plot spaces (or coordinate spaces) are used to synchronize the mapping transformations between individual plot scenes and their corresponding axes. Changes in a plot space are propagated automatically to all the attached view. Plot spaces are designed to simplify all viewing transformations, including synchronized scrolling and zooming operations. GUI specific components such as scrollbars can be tied directly to plot spaces.

Plot Scenes and Visuals - Plot scenes are the primary component in the Carnac Plot Framework. They encapsulate a generic interface that can be used to model any specific input data type using Carnac primitives. Plot scenes provide the data from which plot visuals are built. Since the visual layout is independent of the nature of the data displayed in the plot, no requirements are imposed on the types of scenes constituting the plot. Thanks to Carnac advanced layering capabilities, it is possible to build all sorts of composite plots. For example, in the case of the GeoToolkit, a Contour plot scene can easily be overlaid on top of a map, or even on top of a seismic plot scene.