Saves any number of curves to various formats: Specfile, CSV,
txt or npy. All curves must have the same number of points and share
the same x values.
Parameters: |
- fname – Output file path, or file handle open in write mode.
If fname is a path, file is opened in w mode. Existing file
with a same name will be overwritten.
- x – 1D-Array (or list) of abscissa values.
- y – 2D-array (or list of lists) of ordinates values. First index
is the curve index, second index is the sample index. The length
of the second dimension (number of samples) must be equal to
len(x). y can be a 1D-array in case there is only one curve
to be saved.
- filetype – Filetype: "spec", "csv", "txt", "ndarray".
If None, filetype is detected from file name extension
(.dat, .csv, .txt, .npy).
- xlabel – Abscissa label
- ylabels – List of y labels
- fmt – Format string for data. You can specify a short format
string that defines a single format for both x and y values,
or a list of two different format strings (e.g. ["%d", "%.7g"]).
Default is "%.7g".
This parameter does not apply to the npy format.
- csvdelim – String or character separating columns in txt and
CSV formats. The user is responsible for ensuring that this
delimiter is not used in data labels when writing a CSV file.
- newline – String or character separating lines/records in txt
format (default is line break character \n).
- header – String that will be written at the beginning of the file in
txt format.
- footer – String that will be written at the end of the file in txt
format.
- comments – String that will be prepended to the header and
footer strings, to mark them as comments. Default: #.
- autoheader – In CSV or txt, True causes the first header
line to be written as a standard CSV header line with column labels
separated by the specified CSV delimiter.
|
When saving to Specfile format, each curve is saved as a separate scan
with two data columns (x and y).
CSV and txt formats are similar, except that the txt format allows
user defined header and footer text blocks, whereas the CSV format has
only a single header line with columns labels separated by field
delimiters and no footer. The txt format also allows defining a record
separator different from a line break.
The npy format is written with numpy.save and can be read back with
numpy.load. If xlabel and ylabels are undefined, data is saved
as a regular 2D numpy.ndarray (contatenation of x and y). If
both xlabel and ylabels are defined, the data is saved as a
numpy.recarray after being transposed and having labels assigned to
columns.