From 5a817dc910ed4936d4cf6c31bd67532228945452 Mon Sep 17 00:00:00 2001 From: Theodor Chikin Date: Tue, 14 Oct 2025 19:22:58 +0300 Subject: [PATCH] implemented marking of desired events in logfile by void insert_marker_to_file(char* logfilename, char* marker_text). Also implemented marker correct displaying on plots --- BF_companion | Bin 62656 -> 62824 bytes main.c | 57 ++++++++++++++++++++++++++++++++++++++------------- plotter.py | 16 ++++++++++----- 3 files changed, 54 insertions(+), 19 deletions(-) diff --git a/BF_companion b/BF_companion index b49a9b207f7127950b67164df2548793bd6e63b7..447fb5698ba173a71f3d906fd00d2d3843d05497 100755 GIT binary patch delta 9605 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" + ADC_settings_str) + chart.add_trace(go.Scattergl(x=data["markers"]["N"], y=[i for i in range(len(data["markers"]["N"]))], name="markers", mode="markers", text=data["markers"]["text"])) for key, val in data.items(): - if (key.count("_N") + key.count("_hex")) == 0: - #print(key+"_hex :", data[key+"_hex"]) - chart.add_trace(go.Scattergl(x=data[key+"_N"], y=data[key], name=key, mode="lines", text=data[key+"_hex"])) - # chart.add_trace(go.Scattergl(x=data[key+"_N"], y=data[key], name=key, mode="lines+markers", text=data[key+"_hex"])) + if key != "markers": + if (key.count("_N") + key.count("_hex")) == 0: + #print(key+"_hex :", data[key+"_hex"]) + chart.add_trace(go.Scattergl(x=data[key+"_N"], y=data[key], name=key, mode="lines", text=data[key+"_hex"])) + # chart.add_trace(go.Scattergl(x=data[key+"_N"], y=data[key], name=key, mode="lines+markers", text=data[key+"_hex"])) chart.show()