X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Ftools%2Fpresentation%2Fgenerator_plots.py;h=97f813d848013f9985483df036946fb1554ae945;hp=0fab894193c20df0c20d9577ceb43bd2d5665a19;hb=1cdffc39203589d5da2588927760762129ce2976;hpb=dc85b05f17bb6d04b4c6b4126590f28b6014b9a5 diff --git a/resources/tools/presentation/generator_plots.py b/resources/tools/presentation/generator_plots.py index 0fab894193..97f813d848 100644 --- a/resources/tools/presentation/generator_plots.py +++ b/resources/tools/presentation/generator_plots.py @@ -99,6 +99,9 @@ def plot_performance_box(plot, input_data): append(test["throughput"]["NDR"]["LOWER"]) else: continue + elif test["type"] in ("SOAK", ): + y_vals[test["parent"]].\ + append(test["throughput"]["LOWER"]) else: continue except (KeyError, TypeError): @@ -1431,10 +1434,10 @@ def plot_service_density_heatmap_compare(plot, input_data): if groups and len(groups.groups()) == 3: if str(groups.group(3)) == \ plot["reference"]["include"]: - vals[c][n]["vals_c"].append(result) + vals[c][n]["vals_r"].append(result) elif str(groups.group(3)) == \ plot["compare"]["include"]: - vals[c][n]["vals_r"].append(result) + vals[c][n]["vals_c"].append(result) break if not vals: logging.error("No data.") @@ -1447,13 +1450,13 @@ def plot_service_density_heatmap_compare(plot, input_data): if vals[key_c][key_n]["vals_r"]: vals[key_c][key_n]["nr_r"] = len(vals[key_c][key_n]["vals_r"]) vals[key_c][key_n]["mean_r"] = \ - round(mean(vals[key_c][key_n]["vals_r"]) / 1000000, 1) + mean(vals[key_c][key_n]["vals_r"]) vals[key_c][key_n]["stdev_r"] = \ round(stdev(vals[key_c][key_n]["vals_r"]) / 1000000, 1) if vals[key_c][key_n]["vals_c"]: vals[key_c][key_n]["nr_c"] = len(vals[key_c][key_n]["vals_c"]) vals[key_c][key_n]["mean_c"] = \ - round(mean(vals[key_c][key_n]["vals_c"]) / 1000000, 1) + mean(vals[key_c][key_n]["vals_c"]) vals[key_c][key_n]["stdev_c"] = \ round(stdev(vals[key_c][key_n]["vals_c"]) / 1000000, 1) @@ -1474,17 +1477,24 @@ def plot_service_density_heatmap_compare(plot, input_data): val_r = vals[txt_chains[c - 1]][txt_nodes[n - 1]]["mean_r"] except (KeyError, IndexError): val_r = None - data_r[c - 1].append(val_r) try: val_c = vals[txt_chains[c - 1]][txt_nodes[n - 1]]["mean_c"] except (KeyError, IndexError): val_c = None - data_c[c - 1].append(val_c) - if val_c is not None and val_r: - diff[c - 1].append(round((val_c - val_r) * 100 / val_r, 1)) + val_d = (val_c - val_r) * 100 / val_r else: - diff[c - 1].append(None) + val_d = None + + if val_r is not None: + val_r = round(val_r / 1000000, 1) + data_r[c - 1].append(val_r) + if val_c is not None: + val_c = round(val_c / 1000000, 1) + data_c[c - 1].append(val_c) + if val_d is not None: + val_d = int(round(val_d, 0)) + diff[c - 1].append(val_d) # Colorscales: my_green = [[0.0, 'rgb(235, 249, 242)'], @@ -1513,49 +1523,73 @@ def plot_service_density_heatmap_compare(plot, input_data): for c in range(len(txt_chains)): hover_line = list() for n in range(len(txt_nodes)): - if data_r[c][n] is not None: - data_point = dict( - x=n+1, - y=c+1, - xref="x", - yref="y", - xanchor="center", - yanchor="middle", - text=str(data_r[c][n]) if data_r[c][n] is not None else "", - font=dict( - size=14, - ), - align="center", - showarrow=False - ) - annotations_r.append(deepcopy(data_point)) - data_point["text"] = str(data_c[c][n]) \ - if data_c[c][n] is not None else "" - annotations_c.append(deepcopy(data_point)) - data_point["text"] = str(diff[c][n]) \ - if diff[c][n] is not None else "" - annotations_diff.append(deepcopy(data_point)) + point = dict( + x=n + 1, + y=c + 1, + xref="x", + yref="y", + xanchor="center", + yanchor="middle", + text="", + font=dict( + size=14, + ), + align="center", + showarrow=False + ) - hover_line.append(text.format( - name=vals[txt_chains[c]][txt_nodes[n]]["name"], - title_r=plot["reference"]["name"], - text_r=text_r.format( - val_r=data_r[c][n], + point_text_r = "Not present" + point_text_c = "Not present" + point_text_diff = "" + try: + point_r = data_r[c][n] + if point_r is not None: + point_text_r = text_r.format( + val_r=point_r, stdev_r=vals[txt_chains[c]][txt_nodes[n]]["stdev_r"], - nr_r=vals[txt_chains[c]][txt_nodes[n]]["nr_r"] - ) if data_r[c][n] is not None else "Test Failed", - title_c=plot["compare"]["name"], - text_c=text_c.format( - val_c=data_c[c][n], - stdev_c = vals[txt_chains[c]][txt_nodes[n]]["stdev_c"], - nr_c=vals[txt_chains[c]][txt_nodes[n]]["nr_c"] - ) if data_c[c][n] is not None else "Test Failed", - text_diff=text_diff.format( + nr_r=vals[txt_chains[c]][txt_nodes[n]]["nr_r"]) + except KeyError: + point_r = None + point["text"] = "" if point_r is None else point_r + annotations_r.append(deepcopy(point)) + + try: + point_c = data_c[c][n] + if point_c is not None: + point_text_c = text_c.format( + val_c=point_c, + stdev_c=vals[txt_chains[c]][txt_nodes[n]]["stdev_c"], + nr_c=vals[txt_chains[c]][txt_nodes[n]]["nr_c"]) + except KeyError: + point_c = None + point["text"] = "" if point_c is None else point_c + annotations_c.append(deepcopy(point)) + + try: + point_d = diff[c][n] + if point_d is not None: + point_text_diff = text_diff.format( title_r=plot["reference"]["name"], title_c=plot["compare"]["name"], - diff=diff[c][n] - ) if diff[c][n] is not None else "" - )) + diff=point_d) + except KeyError: + point_d = None + point["text"] = "" if point_d is None else point_d + annotations_diff.append(deepcopy(point)) + + try: + name = vals[txt_chains[c]][txt_nodes[n]]["name"] + except KeyError: + continue + + hover_line.append(text.format( + name=name, + title_r=plot["reference"]["name"], + text_r=point_text_r, + title_c=plot["compare"]["name"], + text_c=point_text_c, + text_diff=point_text_diff + )) hovertext.append(hover_line)