Создайте новый ASCII или бинарное табличное расширение
fptr = createTbl(fptr,tbltype,nrows,ttype,tform,tunit,extname)
fptr = createTbl(fptr,tbltype,nrows,ttype,tform,tunit,extname)
создает новый ASCII или bintable табличное расширение. ttype
должен быть любой 'binary'
или 'ascii'
. nrows
аргумент дает начальное количество строк, которые будут созданы в таблице, и должен обычно быть нулем. tunit
задает модули для каждого столбца, но может быть массив пустой ячейки, если никакие модули не желаемы. extname
задает дополнительное имя, но может быть не использован.
tform
содержит формат столбца в виде массива ячеек из символьных векторов или массива строк. Для бинарных таблиц значения должны быть в форме 'rt'
, где 'r'
повторный счет и 't'
одна из следующих букв.
'A' | Символ ASCII |
'B' | Байт или uint8 |
'C' | Комплекс (одинарная точность) |
'D' | Двойная точность |
'E' | Одинарная точность |
'I' | int16 |
'J' | int32 |
'K' | int64 |
'L' | Логический |
'M' | Комплекс (двойная точность) |
'X' | Бит (int8 нули и единицы) |
Столбец может также быть задан как имеющий переменную ширину если tform
значение имеет форму '1Pt'
или '1Qt'
, где 't'
задает тип данных как выше.
Для таблиц ASCII, tform
содержит значения, которые принимают форму:
'Iw' | int16 столбец с шириной 'w' |
'Ай' | Столбец ASCII с шириной 'w' |
'Fww.dd' | Фиксированная точка |
'Eww.dd' | Одинарная точность с шириной 'ww' и точность 'dd' |
'Dww.dd' | Двойная точность с шириной 'ww' и точность 'dd' |
Эта функция соответствует fits_create_tbl(ffcrtb)
функция в API библиотеки CFITSIO C.
Составьте бинарную таблицу. Первый столбец содержит строки девяти символов каждый. Второй столбец содержит четырехэлементные последовательности битов. Третий столбец содержит трехэлементные последовательности uint8
значения. Четвертый столбец содержит скаляры с двойной точностью.
import matlab.io.* fptr = fits.createFile('myfile.fits'); ttype = {'Col1','Col2','Col3','Col4'}; tform = {'9A','4X','3B','1D'}; tunit = {'m/s','kg','kg/m^3','candela'}; fits.createTbl(fptr,'binary',10,ttype,tform,tunit,'my-table'); fits.closeFile(fptr); fitsdisp('myfile.fits');
Составьте таблицу 2D столбца, где первый столбец имеет одно значение с двойной точностью, но второй столбец имеет переменную длину значение с двойной точностью.
import matlab.io.* fptr = fits.createFile('myfile2.fits'); ttype = {'Col1','Col2'}; tform = {'1D','1PD'}; fits.createTbl(fptr,'binary',0,ttype,tform); fits.closeFile(fptr); fitsdisp('myfile2.fits');
createImg
| insertATbl
| insertBTbl
| readCol
| writeCol