Ajout de l'affichage des erreurs en fonction du temps.
[minwii.git] / src / minwii / logapp.py
index 1210bf6..1bbebd4 100755 (executable)
@@ -177,9 +177,6 @@ class Identification(Frame) :
         self.patientName = StringVar()
         self.createWidgets()
     
-    #def setFileName(self, name) :
-    #    self.fileName.set(name)
-    
     def refresh(self, lfa) :
         filename = basename(lfa.logfile.name)
         self.fileName.set(filename)
@@ -226,13 +223,33 @@ class ResultsFrame(Frame) :
     def layResults(self, lfa) :
         results = lfa.analyse()
         if results :
-            for i, kv in enumerate(results) :
-                k, v = kv
+            for i, kvt in enumerate(results) :
+                k, v, timeBased = kvt
                 kl = Label(self, text='%s :' % k)
                 kl.grid(row=i, column=0, sticky=E)
-            
-                vl = Label(self, text=v)
-                vl.grid(row=i, column=1, sticky=W)
+
+                if not timeBased :
+                    vl = Label(self, text=v)
+                    vl.grid(row=i, column=1, sticky=W)
+                else :
+                    maxv = max(v)
+                    if maxv :
+                        cw, ch = 200, 100
+                        c = Canvas(self, background='#fff', width=cw, height=ch)
+                        rectW = int(float(cw) / len(v))
+                        unitRectH = float(ch) / maxv
+                        for j, fv in enumerate(v) :
+                            if not fv : continue
+                            x0 = j * rectW
+                            y0 = ch - int(unitRectH * fv)
+                            x1 = (j + 1) * rectW
+                            y1 = ch
+                            c.create_rectangle(x0, y0, x1, y1, fill="#9085ba")
+                        c.grid(row=i, column=1, sticky=W)
+                            
+                    else :
+                        vl = Label(self, text='—')
+                        vl.grid(row=i, column=1, sticky=W)
         else :
             msg = Label(self, text="Pas de données exploitables.")
             msg.grid()