From 1187fb661a1cdc51c55096dfe951a2ede27b6223 Mon Sep 17 00:00:00 2001 From: Mika Date: Tue, 24 Mar 2026 11:10:14 +0000 Subject: [PATCH] Add data_visualization/README.md --- data_visualization/README.md | 65 ++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 data_visualization/README.md diff --git a/data_visualization/README.md b/data_visualization/README.md new file mode 100644 index 0000000..979204d --- /dev/null +++ b/data_visualization/README.md @@ -0,0 +1,65 @@ +# Data Visualization für Replikationsanalyse – Experiment 31b + +## Übersicht +Diese Webanwendung visualisiert und analysiert die Replikationsdaten des Experiments **31b**. Hauptziel ist es, Performance-Trends und Engpässe zu erkennen, indem **Bandbreite** und **retry_tailp99** interaktiv gegenüberstellt werden. + +## Hauptfunktionen +- **Interaktive Darstellung** der Replikationsläufe in dynamischen Diagrammen. +- **Vergleich** zwischen Runs, um Änderungen in Bandbreite und retry_tailp99 zu erkennen. +- **Filter** nach Segmenttypen: `pinned`, `unpinned`, `near-expiry`. +- **Zeitbasierte Analyse** der Metriken und Verlaufstrends. +- **Erkennung von Ausreißern** oder Anomalien mittels visueller Hervorhebung. +- **Responsives Dashboard**, optimiert für Desktop und Mobile. + +## Datenfluss +1. Die Anwendung ruft Replikationsdaten über den API-Endpunkt `/run-data` ab. +2. Modul **api.js**: Verarbeitet den Request (`GET /run-data?run_id=`) und gibt die JSON-Daten zurück. +3. Modul **visualization.js**: Stellt Metriken grafisch dar und synchronisiert die Visualisierung mit Filtereingaben. +4. UI-Komponenten aktualisieren den DOM in Echtzeit, sobald neue Daten geladen werden. + +## API-Referenz +**Endpunkt:** `/run-data` + +- **Methode:** GET +- **Parameter:** `run_id` +- **Antwort:** + ```json + { + "run_id": "string", + "metrics": { + "bandwidth": [ ... ], + "retry_tailp99": [ ... ] + }, + "segments": [ ... ] + } + ``` +- **Verwendung:** Wird im Modul `js/api.js` aufgerufen, um Daten an `js/visualization.js` weiterzugeben. + +## Ordnerstruktur +``` +project_root/ +├── index.html +├── css/ +│ └── styles.css +├── js/ +│ ├── api.js +│ ├── visualization.js +│ └── ui.js +└── README.md +``` + +## Verwendung +1. **Setup:** Projektdateien auf einen Webserver oder lokalen Entwicklungsserver legen. +2. **Start:** `index.html` im Browser öffnen. +3. **Interaktion:** + - Run-ID im Interface auswählen. + - Daten werden automatisch über `/run-data` abgerufen. + - Diagramme, Tabellen und Filter reagieren dynamisch. + +## Technische Hinweise +- **Keine externen Ressourcen** (Bilder, Icons, Fonts) werden genutzt. +- **Moderne JS-Features (ES6+)** werden in allen Modulen eingesetzt. +- Das Dashboard ist **barrierearm** und **responsiv** aufgebaut. + +## Copyright +© 2026 Donau2Space.de