Tutorial: Build Dashboard Data¶
Each Luxnode module should emit a compact metrics object for dashboards and keep the full processed spectrum for auditability.
from dataclasses import asdict, is_dataclass
import json
from luxspec import analyze_frame
analysis = analyze_frame(sample, dark=dark, reference=white, mode="reflectance", module="plants")
metrics = analysis.metrics
payload = asdict(metrics) if is_dataclass(metrics) else metrics
print(json.dumps(payload, indent=2))
Recommended dashboard payload:
- device id
- module id
- sample id
- firmware version
- SDK version
- calibrated spectrum URI
- module metric fields
- warnings/cautions
- processing timestamp