Cloned DMOJ
This commit is contained in:
parent
f623974b58
commit
49dc9ff10c
513 changed files with 132349 additions and 39 deletions
53
judge/utils/stats.py
Normal file
53
judge/utils/stats.py
Normal file
|
@ -0,0 +1,53 @@
|
|||
from operator import itemgetter
|
||||
|
||||
__all__ = ('chart_colors', 'highlight_colors', 'get_pie_chart', 'get_bar_chart')
|
||||
|
||||
|
||||
chart_colors = [0x3366CC, 0xDC3912, 0xFF9900, 0x109618, 0x990099, 0x3B3EAC, 0x0099C6, 0xDD4477, 0x66AA00, 0xB82E2E,
|
||||
0x316395, 0x994499, 0x22AA99, 0xAAAA11, 0x6633CC, 0xE67300, 0x8B0707, 0x329262, 0x5574A6, 0x3B3EAC]
|
||||
|
||||
|
||||
highlight_colors = []
|
||||
|
||||
|
||||
def _highlight_colors():
|
||||
for color in chart_colors:
|
||||
r, g, b = color >> 16, (color >> 8) & 0xFF, color & 0xFF
|
||||
highlight_colors.append('#%02X%02X%02X' % (min(int(r * 1.2), 255),
|
||||
min(int(g * 1.2), 255),
|
||||
min(int(b * 1.2), 255)))
|
||||
|
||||
|
||||
_highlight_colors()
|
||||
|
||||
|
||||
chart_colors = list(map('#%06X'.__mod__, chart_colors))
|
||||
|
||||
|
||||
def get_pie_chart(data):
|
||||
return {
|
||||
'labels': list(map(itemgetter(0), data)),
|
||||
'datasets': [
|
||||
{
|
||||
'backgroundColor': chart_colors,
|
||||
'highlightBackgroundColor': highlight_colors,
|
||||
'data': list(map(itemgetter(1), data)),
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
def get_bar_chart(data, **kwargs):
|
||||
return {
|
||||
'labels': list(map(itemgetter(0), data)),
|
||||
'datasets': [
|
||||
{
|
||||
'backgroundColor': kwargs.get('fillColor', 'rgba(151,187,205,0.5)'),
|
||||
'borderColor': kwargs.get('strokeColor', 'rgba(151,187,205,0.8)'),
|
||||
'borderWidth': 1,
|
||||
'hoverBackgroundColor': kwargs.get('highlightFill', 'rgba(151,187,205,0.75)'),
|
||||
'hoverBorderColor': kwargs.get('highlightStroke', 'rgba(151,187,205,1)'),
|
||||
'data': list(map(itemgetter(1), data)),
|
||||
},
|
||||
],
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue