X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Ftools%2Fpresentation%2Fgenerator_plots.py;h=0e237e50aab0f5acbb73edb337f5a573aa69f482;hb=6fb043d8e4450d7db31a5f5903e84f600aa807a4;hp=d1cf7283f9a1121d14cb59e3380bba2961172f40;hpb=eaf112019c3501d39714d92d36e92565b4f76123;p=csit.git diff --git a/resources/tools/presentation/generator_plots.py b/resources/tools/presentation/generator_plots.py index d1cf7283f9..0e237e50aa 100644 --- a/resources/tools/presentation/generator_plots.py +++ b/resources/tools/presentation/generator_plots.py @@ -1431,10 +1431,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.") @@ -1513,49 +1513,70 @@ 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"], + try: + point_r = str(data_r[c][n]) + 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"]) + except KeyError: + point_r = None + point_text_r = "Not present" + point["text"] = "" if point_r is None else point_r + annotations_r.append(deepcopy(point)) + + try: + point_c = str(data_c[c][n]) + 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_c = "Not present" + point["text"] = "" if point_c is None else point_c + annotations_c.append(deepcopy(point)) + + try: + point_d = str(diff[c][n]) + point_text_diff = text_diff.format( title_r=plot["reference"]["name"], - text_r=text_r.format( - val_r=data_r[c][n], - 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( - 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_diff = "" + 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) @@ -1612,7 +1633,9 @@ def plot_service_density_heatmap_compare(plot, input_data): name="Diff", visible=False, colorbar=dict( - title="Relative difference [%]", + title="Relative Difference {name_c} vs. {name_r} [%]". + format(name_c=plot["compare"]["name"], + name_r=plot["reference"]["name"]), titleside="right", titlefont=dict( size=16