Horiba LabSpec / JobinYvon¶
Status: Partial · Vendor: Horiba (Jobin Yvon) · Extensions:
.xml,.txt,.l6m
Horiba’s LabSpec software (and the older Jobin Yvon line) drives Raman
microscopes and writes both interchange exports (LSX XML, LabSpec text) and the
native LabSpec 6 binary container. nirs4all-formats reads the XML and text exports and
one experimental LabSpec 6 .l6m map layout. The format is Raman, adjacent to
the core NIRS point-spectrum scope, and is supported for spectroscopy
interchange and ML-workflow compatibility.
Instruments & software¶
Written by Horiba LabSpec and legacy Jobin Yvon / LabRam software for Raman acquisitions — single spectra, parameter ranges, line scans, maps and time series.
File structure¶
The reader sniffs by extension plus content:
LSX XML (
.xml) — JobinYvon export with<LSX_Data>,<LSX_Tree>and<LSX_Matrix>payloads; spectra, ranges, linescans and maps.LabSpec text (
.txt) —#-prefixed metadata headers followed by a two-column, series-row or map-row numeric section.LabSpec 6 binary (
.l6m) — detected by theLabSpec6magic; the reader scans the container for the mainIntensfloat32 payload, theSpectraxis payload and the matching 2D spatial axes.
What nirs4all-formats extracts¶
Signals — one
SpectralRecordper spectrum or map pixel, with a singleintensitysignal typedRawCounts, keeping the native spectral axis order.Axis — units normalised conservatively:
nm→ wavelength;1/cm,cm-1and corruptedcm-?headers → wavenumber (cm-1);eV→ energy. Text exports that omit the axis unit default tocm-1with warninghoriba_labspec_text_axis_unit_inferred.Metadata — for XML and text maps/linescans,
spatial_x,spatial_yand their unit fields are stored in metadata.Provenance & warnings — the
.l6mpath emitshoriba_labspec6_binary_experimentalon every record because it is validated against a single public fixture.
Variants & support status¶
Variant |
Status |
Notes |
|---|---|---|
LSX XML single spectrum / range |
Supported |
|
LSX XML linescan / map |
Supported |
One record per point; spatial coordinates in metadata. |
LabSpec two-column / series-row text |
Supported |
Legacy LabRam and modern LabSpec exports. |
LabSpec time series-row text |
Supported |
One record per row. |
LabSpec 6 |
Experimental |
One observed layout, validated against the paired text export. |
LabSpec 6 |
Not yet supported |
Pending redistributable samples. |
Limitations & known gaps¶
Native binary support is deliberately narrow: only one
.l6mmap layout is decoded..l6ssingle-spectrum files and other LabSpec 6 layouts/calibration files are not handled until redistributable fixtures exist.Full LabSpec 6 metadata is not yet promoted into typed fields.
Full-array conformance is planned as isolated jobs; the runtime imports no GPL reference-reader code.
Reference readers¶
Cross-checked against rsciio.jobinyvon (JobinYvon XML),
spectrochempy.read_labspec() (LabSpec text) and ccoverstreet/horiba-raman
(LabSpec 6 mapping text and the paired .l6m fixture).
Samples & validation¶
Fixtures under samples/raman_horiba/ cover LSX XML spectra/range/linescan/map
(nm, cm-1, eV axes) and LabSpec two-column, series-row, time-series and
LabSpec 6 map-row text exports, all golden-backed. The experimental
AlN_Gd2O3_indepth.l6m (72 records, cm-1, 498 points) is compared cell-for-cell
against the paired labspec6_Gd2O3_AlN_map.txt: intensities match exactly,
spectral axes match within text-rounding tolerance, and spatial_x/spatial_y
follow the same x-slowest/y-fastest map order. XML range and linescan branches
also carry semantic tests beyond the golden summaries.