File Formats¤
KymFlow saves analysis results in JSON format alongside CSV data files. The JSON file contains structured metadata from three main dataclasses: OlympusHeader, ExperimentMetadata, and AnalysisParameters. This page documents the structure and fields of these dataclasses.
JSON File Structure¤
When KymFile.save_analysis() is called, it creates a JSON file in the analysis folder (parent folder + '-analysis' suffix) with the following structure:
{
"olympus_header": { ... },
"experiment_metadata": { ... },
"analysis_parameters": { ... }
}
ExperimentMetadata¤
The experiment_metadata section contains user-provided experimental metadata for documenting experimental conditions, sample information, and notes. All fields are optional and have default values.
| name | display_name | default_value | description |
|---|---|---|---|
| species | Species | "" | |
| region | Region | "" | |
| cell_type | Cell type | "" | |
| depth | Depth | None | |
| branch_order | Branch Order | None | |
| direction | Direction | "" | |
| sex | Sex | "" | |
| genotype | Genotype | "" | |
| condition | Condition | "" | |
| condition2 | Condition 2 | "" | |
| treatment | Treatment | "" | |
| treatment2 | Treatment 2 | "" | |
| date | Date | "" | |
| note | Note | "" |
AnalysisParameters¤
The analysis_parameters section stores information about the analysis algorithm used, its parameters, when it was run, and where results are saved. This metadata is saved alongside analysis results for reproducibility.
| name | display_name | default_value | description |
|---|---|---|---|
| algorithm | Algorithm | "" | |
| parameters | Parameters | " |
|
| analyzed_at | Analyzed At | None | |
| result_path | Result Path | None |
OlympusHeader¤
The olympus_header section contains acquisition parameters extracted from the Olympus .txt header file that accompanies kymograph TIFF files. All fields have default values to handle cases where the header file is missing.
| name | display_name | default_value | description |
|---|---|---|---|
| um_per_pixel | um/pixel | 1.0 | |
| seconds_per_line | seconds/line | 0.001 | |
| duration_seconds | Duration (s) | None | |
| pixels_per_line | Pixels/Line | None | |
| num_lines | Lines | None | |
| bits_per_pixel | Bits/Pixel | None | |
| date_str | Date | None | |
| time_str | Time | None | |
| raw | Raw | " |
Generating Documentation Tables¤
To generate the markdown tables for this documentation, run:
python scripts/generate_docs.py
Then copy and paste the generated tables into the appropriate sections above.