Latency graphs: Do not hardcode x range 59/31159/1
authorVratko Polak <vrpolak@cisco.com>
Mon, 8 Feb 2021 10:31:57 +0000 (11:31 +0100)
committerVratko Polak <vrpolak@cisco.com>
Mon, 8 Feb 2021 10:31:57 +0000 (11:31 +0100)
+ Compute it from PERCENTILE_MAX.
+ Use slightly higher PERCENTILE_MAX to avoid rounding errors.
+ Add a comment why slightly higher value is needed.

Change-Id: Ic54378d94568efbb8c78a889424f931591ef42db
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
resources/tools/presentation/generator_plots.py

index 7298bab..4ceeebc 100644 (file)
@@ -62,7 +62,8 @@ COLORS = (
 REGEX_NIC = re.compile(r'(\d*ge\dp\d\D*\d*[a-z]*)-')
 
 # This value depends on latency stream rate (9001 pps) and duration (5s).
-PERCENTILE_MAX = 99.9995
+# Keep it slightly higher to ensure rounding errors to not remove tick mark.
+PERCENTILE_MAX = 99.999501
 
 
 def generate_plots(spec, data):
@@ -398,7 +399,8 @@ def plot_hdrh_lat_by_percentile_x_log(plot, input_data):
                     )
 
             layout[u"title"][u"text"] = f"<b>Latency:</b> {name}"
-            layout[u"xaxis"][u"range"] = [0, 5.302]
+            x_max = log(100.0 / (100.0 - PERCENTILE_MAX), 10)
+            layout[u"xaxis"][u"range"] = [0, x_max]
             fig.update_layout(layout)
 
             # Create plot