Use float values for pie graph calculation

This commit is contained in:
relikd
2020-09-14 23:19:20 +02:00
parent 6b2b94f845
commit 35f949cad4
3 changed files with 13 additions and 15 deletions

View File

@@ -101,7 +101,7 @@ td { padding: 0.2em 1em 0.2em 0.1em; }
.help-links tr:nth-child(even) { background: #DDD; } .help-links tr:nth-child(even) { background: #DDD; }
.help-links tr:nth-child(odd) { background: #F9F9F9; } .help-links tr:nth-child(odd) { background: #F9F9F9; }
.help-links .notyet { color: #D11; } .help-links .notyet { color: #D11; }
.help-links .done { color: #3AE48C; } .help-links .done { color: #52C840; }
/* domain tags */ /* domain tags */
.tags { margin: 2em 0; } .tags { margin: 2em 0; }

View File

@@ -90,6 +90,8 @@ def prepare_json(obj):
def transform(ddic): def transform(ddic):
res = list() res = list()
c_sum = 0
c_trkr = 0
for name, (is_tracker, counts) in ddic.items(): for name, (is_tracker, counts) in ddic.items():
rec_percent = len(counts) / rec_count rec_percent = len(counts) / rec_count
if rec_percent < THRESHOLD_PERCENT_OF_LOGS: if rec_percent < THRESHOLD_PERCENT_OF_LOGS:
@@ -98,21 +100,17 @@ def prepare_json(obj):
if avg < THRESHOLD_MIN_AVG_LOGS: if avg < THRESHOLD_MIN_AVG_LOGS:
continue continue
res.append([name, round(avg + 0.001), is_tracker]) res.append([name, round(avg + 0.001), is_tracker])
c_sum += avg
c_trkr += avg if is_tracker else 0
res.sort(key=lambda x: (-x[1], x[0])) # sort by count desc, then name res.sort(key=lambda x: (-x[1], x[0])) # sort by count desc, then name
return res return res, c_trkr, c_sum
obj['pardom'] = transform(obj['pardom']) obj['pardom'], p_t, p_c = transform(obj['pardom'])
obj['subdom'] = transform(obj['subdom']) obj['subdom'], s_t, s_c = transform(obj['subdom'])
# do this after the transformation: obj['tracker_percent'] = s_t / (s_c or 1)
c_tracker = 0
c_total = 0
for _, c, flag in obj['subdom']:
c_tracker += c if flag else 0
c_total += c
obj['tracker_percent'] = c_tracker / (c_total or 1)
obj['tracker'] = list(filter(lambda x: x[2], obj['subdom'])) obj['tracker'] = list(filter(lambda x: x[2], obj['subdom']))
obj['avg_logs'] = c_total obj['avg_logs'] = s_c
obj['avg_logs_pm'] = c_total / (obj['avg_time'] or 1) * 60 obj['avg_logs_pm'] = s_c / (obj['avg_time'] or 1) * 60
def gen_html(bundle_id, obj): def gen_html(bundle_id, obj):

View File

@@ -3,9 +3,9 @@
<head> <head>
<meta charset="utf-8"/> <meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=0.75" /> <meta name="viewport" content="width=device-width, initial-scale=0.75" />
<script type="text/javascript" src="/static/script.js?4"></script> <script type="text/javascript" src="/static/script.js?5"></script>
<title>#_TITLE_#AppCheck: Privacy Monitor</title> <title>#_TITLE_#AppCheck: Privacy Monitor</title>
<link rel="stylesheet" type="text/css" href="/static/style.css?4"> <link rel="stylesheet" type="text/css" href="/static/style.css?5">
<link rel="stylesheet" type="text/css" href="/static/fonts/font.css"> <link rel="stylesheet" type="text/css" href="/static/fonts/font.css">
<link rel="apple-touch-icon" sizes="180x180" href="/static/favicon/apple-touch-icon.png"> <link rel="apple-touch-icon" sizes="180x180" href="/static/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/static/favicon/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="32x32" href="/static/favicon/favicon-32x32.png">