Unverified Commit 60d71b8a authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

add --pgf-export option

parent f7951dee
Loading
Loading
Loading
Loading
Loading
+24 −1
Original line number Diff line number Diff line
@@ -298,6 +298,20 @@ def export_json(filename, data=dict()):
        json.dump(data, f, cls=NpEncoder)


def export_pgf(filename, data, power, smooth_power):
    timestamp = data[1:, 0] * 1e-6
    current = data[1:, 1] * 1e-9
    voltage = data[1:, 2] * 1e-3

    with open(filename, "w") as f:
        print("timestamp voltage current power smoothpower mwsmoothpower", file=f)
        for i in range(len(power)):
            print(
                f"{timestamp[i]} {voltage[i]} {current[i]} {power[i]} {smooth_power[i]} {smooth_power[i] * 1e3}",
                file=f,
            )


def detect_changepoints(timestamps, trace, num_samples):
    pelt = PELT(trace, num_samples=num_samples)
    changepoints = pelt.get_changepoints()
@@ -362,6 +376,12 @@ def main():
        type=str,
        help="Export analysis results (e.g. changepoints) to JSON file",
    )
    parser.add_argument(
        "--pgf-export",
        metavar="FILENAME",
        type=str,
        help="Export plot data to PGF TXT file",
    )
    parser.add_argument(
        "--libmsp430-path",
        metavar="DIRECTORY",
@@ -699,6 +719,9 @@ def main():
            extra_data["current_changepoints"] = current_changepoints
        export_json(args.json_export, extra_data)

    if args.pgf_export:
        export_pgf(args.pgf_export, data, power, smooth_power)

    if args.plot:
        import matplotlib.pyplot as plt