# 11 - Reporting: Tables, Charts, Weighted Scoring ## Context / Goal Aggregate all measurements and projections into the final decision document that clearly ranks the storage formats for laboratory use cases: analysis, report generation, search/filtering, archiving, inter-lab exchange. ## Dependencies 09, 10 (and 02 for embedding process diagrams). ## Processing instructions Write `report.py` using matplotlib (PNG, 150 dpi, log scales where ranges span decades) into `./out/report/charts/`, and assemble `./out/report/REPORT.md`. ### Tables 1. Storage footprint: measured @150 MB + coefficients vs CSV + projected @600 GB/1.2 TB/6 TB (incl. compressed archival sizes). 2. Q1-Q7 median wall time / peak RAM / CPU% / read MB, per format (measured). 3. Q1-Q7 projected wall time @600 GB with IMPRACTICAL/FAIL flags. 4. Hardware sizing & cost per format @600 GB. 5. Weighted scoring matrix (see below). ### Charts (each measured + each projected @600 GB) - C1: disk footprint bar (log). - C2: RAM requirement bar (log). - C3: per-query grouped bars Q1-Q7 wall time (log), one chart per query, 5 formats each. - C4: degradation curves - wall time vs data size (150 MB → 6 TB), one line per format, per query class (point read / indexed / full aggregation), log-log. - C5: stacked-bar weighted score. - C6: cost vs performance scatter @600 GB (x = est cost, y = geometric-mean query time, log-log). ### Weighted scoring (agreed methodology) Normalized 0-10 per metric, then weights: Search speed ×5 (0-50), RAM economy ×2 (0-20), Disk economy ×1 (0-10). Max 80. Search score = normalized inverse geometric mean of Q1-Q7 projected @600 GB (TIMEOUT/FAIL → 0). Present measured-scale and 600 GB-scale scoreboards side by side. ### Narrative sections (concise, English) - Executive summary with the recommendation (expected, to be confirmed by data: PostgreSQL system of record; CSV retained as raw archive; hybrid JSON-LD for exchange; RDF as virtual layer only - reference Ontop OBDA). - Use-case mapping table: analysis / reports / search / archiving / exchange → recommended format(s). - Limitations: single-node, simulated data, extrapolation assumptions. ## Output - `./out/report/REPORT.md` + `./out/report/charts/*.png` + all tables as CSV in `./out/report/tables/`. - Marker `./out/.done/11.ok`.