Figure Composer

Figure Composer is a standalone Java application with which a researcher can prepare, revise and review detailed scientific figures intended for journal publication. It is a relatively mature application that gets a lot of use in the Lisberger and other neuroscience laboratories. It is part of the DataNav suite because its graphic figure model is also used to compose the figure template for each navigation view defined on a hub in a DataNav portal.

Figures in FC - Maestro UG

Key Features

In the "slideshow" above are just a few examples of the kinds of figures that can be generated in the Figure Composer. As you can see, the program can do a lot more than plot a bunch of points in a 2D Cartesian coordinate system. Polar, semilog, and loglog plots are all supported. One can even build a flowchart in Figure Composer. Data can be entered as a set of individual points with standard deviations on each coordinate, {x+xStd, y+yStd}N ; as a series of samples taken at regular intervals, {xi , yi}N, where xi = x0 + i·dx, i = {0..N-1} ; as a collection of individual point sets all sharing the same x-coordinates, {x : y1, y2, ...}N ; or as a collection of individual sampled series sharing the same x-coordinates, {xi : y1i, y2i, ...}, where xi = x0 + i·dx, i = {0..N-1}. Additional data set formats support spike train-like rasters and "heat map" image data.

Regardless of how the data is stored in a figure definition document, it may be presented in a number of different forms within a graph: as a polyline connecting the well-defined points, perhaps adorned with optional marker symbols and error bars; as an unadorned polyline with an error band spanning ±1 standard deviation about a nominal trace; as a histogram. A "multi-set" collection may be rendered as separate polylines for the individual point sets in the collection, with another polyline tracing the average across those sets. Small multi-set collections (typically with just a few member sets) may be presented in a typical bar plot, in either the horizontal or vertical orientation, and in a grouped or stacked configuration (new in FC 4.6.1). Area and pie charts are also supported. Raster data sets are rendered as spike trains or as "counts-per-bin" histograms. There are two ways to present 3D data in a 2D graph. The aforementioned image data set (xyzimg) is really a 3D format in which Z is sampled over a regular grid in the X-Y plane; it is rendered as a "heat map" in which each value in the image is mapped to an RGB color via a specified look-up table, or color map. In addition, a new 3D discrete point set format (xyzset) was introduced in FC 4.6.2; it may be rendered as "bubble" plot -- an X-Y scatter plot in which the size and or color of the marker symbol drawn at (X,Y) varies with the Z-coordinate value.

More recently, support for 3D plots was introduced in FC 5.0.0. You can now render an xyzset as a 3D scatter, bubble or stem plot, or an xyzimg data set as a 3D surface mesh. Future releases will offer additional ways to present 3D data.

User Interface

Figure Composer presents a single application frame window with a menu bar near the top, immediately below the title bar. (NOTE: On Mac OSX, the menu bar is at the top of the desktop, in conformance with Apple's user interface design guidelines.) The majority of the frame window is filled by the main content panel and the Workspace Browser. The browser is docked to the frame window's right-hand edge and provides convenient access to FypML (.fyp) and Matlab figures (.fig) that the user has created in the past. The main content panel has the appearance of a tabbed pane, with one tab for each open figure; clicking on a different tab loads the corresponding figure into the content panel. That panel has a toolbar along its top edge and three central components -- the Figure Navigator, the Property Editor, and the Figure Canvas. The selected figure is rendered on the interactive Figure Canvas. You can use it to select a particular object within the figure, move that object by dragging it to another location, or zoom in on a particular portion of the rendering. The Figure Navigator is a customized tree-like control that exposes the hierarchical graphic model of the figure; use it to examine the figure's structure, find a particular graphic node, or change the order in which "sibling nodes" are drawn (the "Z order"). Finally, the Property Editor houses a variety of widgets that expose the properties, or attributes, of the particular object currently selected in the figure. As you make changes to an object's attributes on the Property Editor, the rendered figure is immediately updated on the Figure Canvas to reflect those changes.

This chapter starts out with a detailed description of DataNav's graphic model for a scientific figure, followed by a step-by-step example of how to create a figure with the program. The remaining pages examine each of the components of Figure Composer's user interface in much greater detail.