summaryrefslogtreecommitdiff
path: root/display.py
blob: e160c6b6d24a3bed4022192dc18115348eb30952 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/python3
# displays stats as graph. assumes csv is in chronological order, with no
# overlapping sessions. as initial test: make a bar chart for time spent per
# tag, for every day
import pygal
import csv
import argparse
from collections import OrderedDict
import formatting as f

parser = argparse.ArgumentParser()
parser.add_argument("logfile", help="log file to display chart of",
                    type=argparse.FileType('r'))
args = parser.parse_args()

day_times = f.per_tag_per_day(args.logfile)

for day in day_times:
    chart = pygal.Bar()
    pie = pygal.Pie()
    for key, value in day.items():
        if key == "date":
            continue
        chart.add(key, round(value/60, 0))
        pie.add(key, round(value/60, 0))
    chart.render_to_file(str(day["date"]+"-bar.svg"))
    pie.render_to_file(str(day["date"]+"-pie.svg"))