54 lines
1.3 KiB
Python
54 lines
1.3 KiB
Python
|
#!/usr/bin/env python
|
||
|
# encoding: utf-8
|
||
|
|
||
|
from .plottings import radar_graph
|
||
|
import pandas as pd
|
||
|
import numpy as np
|
||
|
|
||
|
def comp_radar(df, optimum = None):
|
||
|
""" Plot the radar graph concerning "Competence" column of the df
|
||
|
|
||
|
:param df: DataFrame with "Competence", "Normalized"
|
||
|
:returns: exes with radar plot
|
||
|
|
||
|
"""
|
||
|
comp_pt = pd.pivot_table(df,
|
||
|
index = ["Competence"],
|
||
|
values = ["Normalized"],
|
||
|
aggfunc=np.mean,
|
||
|
)
|
||
|
labels = list(comp_pt.index)
|
||
|
values = [i[0] for i in comp_pt.values]
|
||
|
if optimum is None:
|
||
|
optimum = [1]*len(values)
|
||
|
fig, ax = radar_graph(labels, values, optimum)
|
||
|
return fig, ax
|
||
|
|
||
|
def marks_hist(df):
|
||
|
""" Return axe for the histogramme of the dataframe
|
||
|
|
||
|
:param df: Dataframe with "Mark" and "Bareme" columns. If it has "Nom" column, it is use in title.
|
||
|
"""
|
||
|
bareme = df["Bareme"].max()
|
||
|
bins = bareme*2
|
||
|
|
||
|
ax = df["Mark"].hist(bins = bins, range=(0,bareme))
|
||
|
|
||
|
try:
|
||
|
nom = df["Nom"].unique()
|
||
|
except KeyError:
|
||
|
title="Histogramme"
|
||
|
else:
|
||
|
title="Histogramme pour {}".format(" ".join(nom))
|
||
|
|
||
|
ax.set_title(title)
|
||
|
|
||
|
return ax
|
||
|
|
||
|
|
||
|
|
||
|
# -----------------------------
|
||
|
# Reglages pour 'vim'
|
||
|
# vim:set autoindent expandtab tabstop=4 shiftwidth=4:
|
||
|
# cursor: 16 del
|