Columns Window
The Columns Window displays a JTable
giving all the information
known about each column in the main data table. It may take a little bit
of getting used to, since each column in the main data table
is represented by a row in the JTable displayed here.
The order and widths of the columns of JTable widget can be
changed in the same way as those for the browser window JTable,
but this has no effect on the data.
The order in which the rows of this JTable are presented
is the same as the order in which the columns appear in the
browser window.
Toolbar
The following toolbar actions are available:
New Synthetic Column
- This allows you to add a new column based on the existing ones -
see the section on Synthetic columns.
Also available as the New Synthetic Column item in the
Columns menu.
Delete Columns
- If any of the JTable rows are selected, then clicking this button
will delete them from the display here and elsewhere in TOPCAT
(e.g. the main browser window). Deleted columns cannot be undeleted.
Also available as the Delete selected column(s) item
in the Columns menu.
Menus
The following items appear in the Columns menu:
- Sort selected up
- If a single column is selected then the row order in the main browser
window will be re-ordered so that the selected column's values appear
in ascending order.
- Sort selected down
- Like Sort selected up but with the opposite sense.
Editing metadata
Some of the metadata items in the JTable can be edited.
Double-click in the cell you wish to edit, and if a text cursor shows
up there you can type changes to that metadata item.
Press return to confirm the edit when you have finished.
Column Metadata Items
For each column in the data table (each line in the displayed JTable)
items of information such as
column name, description, UCD etc are given.
Exactly which items are shown will depend on the kind of table
in the viewer and how much metadata it has.
Some of the items are these:
- Index
- The number of the column in the browser window display; also the
number of the row in the JTable shown here.
This value can change for a given column if some columns
are deleted moved or inserted.
- Name
- The name of the column.
- Class
- The Java class of the items in that column. You don't have to know
very much Java to understand these; they are Float or Double for
floating point numbers; Byte, Short, Integer or Long for integer
numbers, Boolean for a logical (true/fals) flag,
or String for a string of ASCII or Unicode characters.
There are other possibilities, but these will cover most.
The characters '[]' after the name of the class indicates that each
cell in the column holds an array of the indicated type.
- Shape
- Cells of a table can contain arrays as well as scalars.
If the column contains an array type, this indicates the shape that
it should be interpreted as. It gives the dimensions in column-major
order. The last element may be a '*' to indicate that the size
of the array may be variable. For scalar columns, this item will be blank.
- Units
- The units in which quantities in this column are expressed.
- Description
- A textual description of the function of this column.
- UCD
- The UCD associated with this column, if one is specified.
UCDs are Uniform
Content Descriptors, and indicate the semantics
of the values in this column.
- Expression
- The algebraic expression defining the values in this column.
This will only be filled in if the column in question is a
synthetic column which you have added, rather than one present in
the data in its original loaded form.
- $ID
- A unique and unchanging ID value for each column. These are useful
in defining expressions for synthetic columns, since they are
guaranteed unique for each column. Although the column Name can
be used as well, the Name may not be unique and may not have the
correct form for use in an algebraic expression.
Initially, the Index value and the $ID value will match each other
(except the $ID is preceded by a '$' character) but if columns are
moved, added or deleted they will no longer match.