Main Content

matlab.io.fits.writeCol

Write elements into ASCII or binary table column

Syntax

writeCol(fptr,colnum,firstrow,coldata)

Description

writeCol(fptr,colnum,firstrow,coldata) writes elements into an ASCII or binary table extension column.

Note

If you use the writeCol function to write complex data to a column defined by a noncomplex data type, then writeCol ignores the imaginary part and only writes the real part to the column. To write complex data correctly, define the format of the table column appropriately using the tform argument of the createTbl function.

When writing rows of data to a variable length field, coldata must be a cell array.

This function corresponds to the fits_write_col (ffpcl) function in the CFITSIO library C API.

Examples

Write to a table with ASCII, uint8, double-precision, and variable-length double-precision columns.

import matlab.io.*
fptr = fits.createFile('myfile.fits');
ttype = {'Col1','Col2','Col3','Col4'};
tform = {'3A','3B','1D','1PD'};
tunit = {'m/s','kg/m^3','candela','parsec'};
fits.createTbl(fptr,'binary',0,ttype,tform,tunit,'my-table');
fits.writeCol(fptr,1,1,['dog'; 'cat']);
fits.writeCol(fptr,2,1,[0 1 2; 3 4 5; 6 7 8; 9 10 11]);
fits.writeCol(fptr,3,1,[1; 2; 3; 4]);
fits.writeCol(fptr,4,1,{1;[1 2];[1 2 3];[1 2 3 4]});
fits.closeFile(fptr);
fitsdisp('myfile.fits','index',2,'mode','full');

Write to a table with logical, bit, double precision, and variable-length complex single-precision columns.

import matlab.io.*
fptr = fits.createFile('myfile.fits');
ttype = {'Col1','Col2','Col3','Col4'};
tform = {'2L','3X','1D','1PC'};
tunit = {'','kg/m^3','candela','parsec'};
fits.createTbl(fptr,'binary',0,ttype,tform,tunit,'my-table');
fits.writeCol(fptr,1,1,[false false; true false]);
fits.writeCol(fptr,2,1,int8([0 1 1; 1 1 1; 1 1 1; 1 0 1]));
fits.writeCol(fptr,3,1,[1; 2; 3; 4]);
data = cell(4,1);
data{1} = single(1);
data{2} = single(1+2j);
data{3} = single([1j 2 3+j]);
data{4} = single([1 2+3j 3 4]);
fits.writeCol(fptr,4,1,data);
fits.closeFile(fptr);
fitsdisp('myfile.fits','index',2,'mode','full');

See Also

|