colour.read_spectral_data_from_csv_file#

colour.read_spectral_data_from_csv_file(path: str, **kwargs: Any) Dict[str, NDArrayFloat][source]#

Read the spectral data from given CSV file in the following form:

390,  4.15003E-04,  3.68349E-04,  9.54729E-03
395,  1.05192E-03,  9.58658E-04,  2.38250E-02
400,  2.40836E-03,  2.26991E-03,  5.66498E-02
...
830,  9.74306E-07,  9.53411E-08,  0.00000

and returns it as an dict as follows:

{
    'wavelength': ndarray,
    'field 1': ndarray,
    'field 2': ndarray,
    ...,
    'field n': ndarray
}
Parameters:
  • path (str) – CSV file path.

  • kwargs (Any) – Keywords arguments passed to numpy.recfromcsv() definition.

Returns:

CSV file content.

Return type:

dict

Notes

  • A CSV spectral data file should define at least define two fields: one for the wavelengths and one for the associated values of one spectral distribution.

Examples

>>> import os
>>> from pprint import pprint
>>> csv_file = os.path.join(
...     os.path.dirname(__file__),
...     "tests",
...     "resources",
...     "colorchecker_n_ohta.csv",
... )
>>> sds_data = read_spectral_data_from_csv_file(csv_file)
>>> pprint(list(sds_data.keys()))
['wavelength',
 '1',
 '2',
 '3',
 '4',
 '5',
 '6',
 '7',
 '8',
 '9',
 '10',
 '11',
 '12',
 '13',
 '14',
 '15',
 '16',
 '17',
 '18',
 '19',
 '20',
 '21',
 '22',
 '23',
 '24']