Don't show exercises with few elements in graphs

This commit is contained in:
William Pettersson 2025-03-31 17:50:48 +01:00
parent 4bc6b618f9
commit 325bb0cb72

View file

@ -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()