In STABLE, statistical algorithms from Genstat will be ported to a new environment derived from IRIS Explorer, and combined with new facilities for visualising statistical data. The new environment will combine the flexibility of the older command-based interface to Genstat with the ease of use of a menu-based system. In particular, the visual programming paradigm familiar to IRIS Explorer users will allow STABLE users to combine components of their statistical analysis via an easy-to-use point and click interface.
Work on STABLE to date has included the design of a new IRIS Explorer datatype to allow statistics data to be passed between modules. Because IRIS Explorer supports the creation of user-defined datatypes, this is straightforward to do (see below for details of an IRIS Explorer Technical report giving a full account of this). In addition, new modules have been written to read, process and display statistics datasets, and the partners in the project have received training in module development from NAG personnel.
An interesting feature of STABLE is that the platform of choice for the project is Windows NT. Many STABLE modules have been designed to be tightly integrated into the Windows environment, and STABLE can act as a showcase of possibilities for other users of IRIS Explorer on this platform (even those who are not concerned with statistics).
For example, because many of the STABLE users were already familiar with Microsoft Excel, and used it to store some of their datasets, there was a call from them for an Excel interface to STABLE. This was accomplished via OLE (Object Linking and Embedding) Automation, which allows the creation and manipulation of objects exposed by one application from a another application. In STABLE, the ExcelMod module acts an automation controller and starts an instance of Excel when it is initialised in the Map Editor. This instance of Excel is an OLE object within the module and the module can access the properties and methods exposed by the object. This gives the module a similar functionality to that available in Excel macros, which allows it to open workbooks, create worksheets, get and set cell values and so on. Figure 1 shows two instances of Excel being used in a STABLE application for non-linear optimisation.
Another new module developed for STABLE is GraphView, which allows for multiple displays of y(x) data. This is written using Open Inventor for Windows NT, which provides Inventor window classes that extend the Microsoft Foundation Classes (MFC). The GraphView module is an MFC Multiple Document Interface (MDI) application that uses Inventor document and view classes. Here, the management of the size and position of the individual windows is controlled by the MFC MDI framework and the Inventor classes control the display within each window. The plots within the windows are Inventor scene graphs produced using MasterSuite, which is an Inventor-based library from Template Graphics Software. In GraphView, each component of the plot (such as axes, points, title and so on) are individual objects, which allows the use of callback functions when an object is selected. For example, when the user clicks on an axis a dialog box appears allowing properties such as the axis colour and legend to be edited. Figure 2 shows the display of a time series and its autocorrelation function in two windows of the GraphView module.
STABLE is funded by the European Union's Fourth Framework Programme in association with Eurostat. Readers who are interested in keeping up with the project will be able to find more information at the STABLE website (External). Finally, a step-by-step account of the mechanism for creating the user-defined IRIS Explorer datatype used in STABLE is presented in the Technical Report "Implementing a statistical data type in IRIS Explorer" (External), available as HTML (External) or PostScript (External) from the IRIS Explorer Technical Reports page (External), or as hard copy from the IRIS Explorer Center.