Skip to content

Commit bb27253

Browse files
committed
Added visually more appealing way of presenting the tuple frequencies
1 parent 1194f5d commit bb27253

File tree

2 files changed

+49
-10
lines changed

2 files changed

+49
-10
lines changed

stats/templates/stats/descriptive.html

+43-4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77
<script src="https://cdnjs.cloudflare.com/ajax/libs/nvd3/1.8.4/nv.d3.js"></script>
88
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/nvd3/1.8.4/nv.d3.css">
99

10+
<link href="https://gitcdn.github.io/bootstrap-toggle/2.2.2/css/bootstrap-toggle.min.css" rel="stylesheet">
11+
<script src="https://gitcdn.github.io/bootstrap-toggle/2.2.2/js/bootstrap-toggle.min.js"></script>
12+
13+
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/dt-1.10.21/datatables.min.css"/>
14+
<script type="text/javascript" src="https://cdn.datatables.net/v/bs/dt-1.10.21/datatables.js"></script>
15+
1016
<style>
1117
.chart {
1218
height: 300px;
@@ -25,6 +31,13 @@
2531
#tables {
2632
clear: both;
2733
}
34+
35+
.dot {
36+
height: 20px;
37+
width: 20px;
38+
border-radius: 50%;
39+
display: inline-block;
40+
}
2841
</style>
2942
{% endblock %}
3043

@@ -95,23 +108,30 @@ <h3>
95108
{% endfor %}
96109
</tbody>
97110
</table>
98-
</div>
99111

100112
<h3>
101113
Tuple frequency
102114
</h3>
103115

104-
<table class="table table-striped">
116+
<input id="toggle-text" type="checkbox" data-toggle="toggle"> Show text
117+
<table id="tuples-table" class="table table-striped">
105118
<thead>
106119
<tr>
107-
<th>Tuple</th>
120+
{% for language in languages %}
121+
<th>{{ language.title }}</th>
122+
{% endfor %}
108123
<th>Count</th>
109124
</tr>
110125
</thead>
111126
<tbody>
112127
{% for t, c in tuples %}
113128
<tr>
114-
<td>{{ t|join:", " }} </td>
129+
{% for tense in t %}
130+
<td>
131+
<span class="dot" title="{{ tense }}"></span>
132+
<span class="txt">{{ tense }}</span>
133+
</td>
134+
{% endfor %}
115135
<td>{{ c }}</td>
116136
</tr>
117137
{% endfor %}
@@ -171,6 +191,25 @@ <h3>
171191
}
172192

173193
Object.keys(counters).sort().forEach(graphLanguage);
194+
195+
$('.dot').each(function() {
196+
$(this).css('background-color', colors[$(this).attr('title')]);
197+
});
198+
199+
$('.txt').hide();
200+
201+
$('#toggle-text').change(function() {
202+
$('.dot').toggle();
203+
$('.txt').toggle();
204+
});
205+
206+
var indexLastColumn = $('#tuples-table').find('tr')[0].cells.length - 1;
207+
$('#tuples-table').DataTable({
208+
order: [[ indexLastColumn, 'desc' ]],
209+
paging: false,
210+
info: false,
211+
});
212+
174213
</script>
175214

176215
{% endblock %}

stats/views.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -287,12 +287,12 @@ def get_context_data(self, **kwargs):
287287

288288
cache = prepare_label_cache(self.object.corpus)
289289

290-
for l in languages:
290+
for language in languages:
291291
c_tenses = Counter()
292292
c_tensecats = Counter()
293293
n = 0
294294
labels = set()
295-
for t in tenses[l.iso]:
295+
for t in tenses[language.iso]:
296296
tense_labels, tense_color, tense_category = get_tense_properties_from_cache(t, cache, len(labels))
297297

298298
# multiple labels are expected, handle single tense labels
@@ -310,12 +310,12 @@ def get_context_data(self, **kwargs):
310310
c_tensecats.update([tense_category])
311311
n += 1
312312

313-
counters_tenses[l] = c_tenses.most_common()
314-
counters_tensecats[l] = c_tensecats
313+
counters_tenses[language] = c_tenses.most_common()
314+
counters_tensecats[language] = c_tensecats
315315

316316
tensecat_table = defaultdict(list)
317-
for l in languages:
318-
tensecat_counts = counters_tensecats[l]
317+
for language in languages:
318+
tensecat_counts = counters_tensecats[language]
319319
for tensecat in distinct_tensecats:
320320
if tensecat in list(tensecat_counts.keys()):
321321
tensecat_table[tensecat].append(tensecat_counts[tensecat])

0 commit comments

Comments
 (0)