]> AND Private Git Repository - HindawiJournalOfChaos.git/blob - IH/iihmsp13/exp/plot_roc.py
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
tt
[HindawiJournalOfChaos.git] / IH / iihmsp13 / exp / plot_roc.py
1 import matplotlib.pyplot as mtpl
2 import numpy as np 
3
4 roc_f = [(0.0, 0.69999999999999996), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.75), (0.0, 0.84999999999999998), (0.0, 0.84999999999999998), (1.0, 1.0), (1.0, 1.0), (1.0, 1.0)]
5
6
7 """
8 [(0.0, 0.13), (0.0, 0.23000000000000001), (0.0, 0.25), (0.0, 0.25), (0.0, 0.28999999999999998), (0.0, 0.28999999999999998), (0.0, 0.29999999999999999), (0.0, 0.31), (0.0, 0.31), (0.0, 0.32000000000000001), (0.0, 0.32000000000000001), (0.0, 0.32000000000000001), (0.0, 0.32000000000000001), (0.0, 0.33000000000000002), (0.0, 0.33000000000000002), (0.0, 0.34000000000000002), (0.0, 0.34000000000000002), (0.0, 0.34000000000000002), (0.0, 0.34000000000000002), (0.0, 0.34000000000000002), (0.0, 0.34999999999999998), (0.0, 0.34999999999999998), (0.0, 0.37), (0.0, 0.41999999999999998), (0.0, 0.41999999999999998), (0.0, 0.42999999999999999), (0.0, 0.45000000000000001), (0.0, 0.46000000000000002), (0.0, 0.48999999999999999), (0.0, 0.53000000000000003), (0.0, 0.55000000000000004), (0.0, 0.58999999999999997), (0.0, 0.63), (0.0, 0.67000000000000004), (0.0, 0.68000000000000005), (0.0, 0.68999999999999995), (0.0, 0.69999999999999996), (0.0, 0.75), (0.0, 0.80000000000000004), (0.0, 0.85999999999999999), (0.0, 0.88), (0.01, 0.88), (0.28000000000000003, 0.91000000000000003), (0.52000000000000002, 0.94999999999999996), (0.87, 1.0), (1.0, 1.0), (1.0, 1.0), (1.0, 1.0), (1.0, 1.0), (1.0, 1.0)]
9 """
10
11
12 def f(x):
13     return x
14
15
16
17 roc_x_f = [x for (x,_) in roc_f]
18 roc_y_f = [y for (_,y) in roc_f]
19
20 """
21 roc_x_n = [x for (x,_) in roc_n]
22 roc_y_n = [y for (_,y) in roc_n]
23 roc_x_n_dct = [x for (x,_) in roc_n_dct]
24 roc_y_n_dct = [y for (_,y) in roc_n_dct]
25 """
26
27 fig = mtpl.figure()
28 mtpl.axis=[0.0,1.0,0.0,1.0]
29 mtpl.autoscale(False)
30 ax_jpg = fig.add_subplot(111)
31
32 ax_jpg.plot(roc_x_f, roc_y_f,"-")
33 ax_jpg.plot(roc_x_f, roc_y_f, 'go')
34
35 """
36 ax_jpg.plot(roc_x_n, roc_y_n,"--")
37 ax_jpg.plot(roc_x_n_dct, roc_y_n_dct, '-.')
38 ax_jpg.plot(roc_x_f_dct, roc_y_f_dct, ':')
39 ax_jpg.plot(roc_x_n, roc_y_n, 'bo')
40 ax_jpg.plot(roc_x_n_dct, roc_y_n_dct, 'ro')
41 ax_jpg.plot(roc_x_f_dct, roc_y_f_dct, 'co')
42 """
43
44
45
46 #mtpl.legend(('dwt(neg)','dwt(fl)', 'dct(neg)', 'dct(fl)'),'center right', shadow=True)
47
48 ax_jpg.set_xlabel('False Positive Rate')
49 ax_jpg.set_ylabel('True Positive Rate')
50 mtpl.savefig("ROC.pdf")
51
52 nb_pts = 50
53 seuils = [float(1.05)/nb_pts*t for  t in range(1,1+nb_pts)]
54 top=(0,1)
55 idmin=np.argmin([(roc_f[t][0]-top[0])**2+(roc_f[t][1]-top[1])**2 for t in range(nb_pts)])
56 print "smin,",seuils[idmin]