fits
FITS is a very well-established format for storage of astronomical table or image data (see https://fits.gsfc.nasa.gov/). This writer stores tables in a FITS file consisting of two HDUs (Header+Data Units): a Primary HDU as required by the FITS standard, and a single extension of type BINTABLE containing the table data.
There are a few variants of this format:
fits-basic
, but columns containing
variable-length numeric array data are stored using the P
and Q
formats where appropriate, rather than padding
smaller arrays to the size of the largest.
This can make for more compact storage of variable-length array-valued
column data but may also result in tables less suitable for streaming.
fits-basic
,
but it will rearrange and rename columns as required to follow
the convention, and it will fail if the table does not contain
the required HEALPix metadata (STIL_HPX_*
parameters).
fits-plus
;
in general you don't need to worry about this,
it just gives you some hidden benefits over fits-basic
.
A private convention is used where required to support encoding of tables with more than 999 columns (not possible in standard FITS); this was discussed on the FITSBITS mailing list in July 2017 in the thread BINTABLE convention for >999 columns. If software unaware of this convention (e.g. CFITSIO) is used to read such tables, it will only see the first 998 columns written as intended, plus a column 999 containing an undescribed byte buffer.
The handler behaviour may be modified by specifying
one or more comma-separated name=value configuration options
in parentheses after the handler name, e.g.
"fits-plus(date=true)
".
The following options are available:
date = true|false
Multiple tables may be written to a single output file using this format.
If no output format is explicitly chosen,
writing to a filename with
the extension ".fit
", ".fits
" or ".fts
" (case insensitive)
will select fits-plus
format for output.
For column-oriented FITS table output, see Section 5.1.2.2.