This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

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

|