From 325bb0cb72adeccb889bcc04f138011d75651b72 Mon Sep 17 00:00:00 2001 From: William Pettersson Date: Mon, 31 Mar 2025 17:50:48 +0100 Subject: [PATCH] Don't show exercises with few elements in graphs --- gpx_stats.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/gpx_stats.py b/gpx_stats.py index 842f36b..0b68e04 100755 --- a/gpx_stats.py +++ b/gpx_stats.py @@ -219,19 +219,25 @@ def _linedata(mode, start, end): else: value = dist data[exer_type(dist, time, speed, date)].append([number, value]) + data = { + key: value + for key, value in data.items() + if len(value) > 2 + } return data, lastday def lines(mode='distance', duration='thismonth'): plt.style.use('dark_background') - fig = plt.figure(figsize=(12,6)) + fig = plt.figure(figsize=(18, 10)) ax = fig.subplots() data, lastday = _linedata(mode, datetime.date.today().replace(day=1).replace(month=1), datetime.date.today() + datetime.timedelta(days=1), ) for exer in TRACKED: - plt_line(data[exer['describe']], ax, exer['describe'], nbins=lastday) + if exer['describe'] in data: + plt_line(data[exer['describe']], ax, exer['describe'], nbins=lastday) data, lastday = _linedata(mode, (datetime.date.today().replace(day=1).replace(month=1) - datetime.timedelta(days=1)).replace(day=1).replace(month=1), @@ -239,7 +245,8 @@ def lines(mode='distance', duration='thismonth'): - datetime.timedelta(days=1), ) for exer in TRACKED: - plt_line(data[exer['describe']], ax, exer['describe'] + " (prev. year)", nbins=lastday) + if exer['describe'] in data: + plt_line(data[exer['describe']], ax, exer['describe'] + " (prev. year)", nbins=lastday) ax.legend(loc='upper left') ax2 = ax.twiny()