Commit a1f7d7470fb7c758eca9f234c183cbadcd01c59a
1 parent
4cab8d4c
Exists in
master
Improvements to layout code, still needs y-axis label rotating
Showing
1 changed file
with
22 additions
and
16 deletions
Show diff stats
telemetry/code/monitor/graph_plotter_rewrite.py
... | ... | @@ -59,38 +59,44 @@ class Plot(pyglet.window.Window): |
59 | 59 | def drawHeading(self): |
60 | 60 | """Draw a title for the graph (duplicated in the window titlebar, if present""" |
61 | 61 | heading = pyglet.text.Label(self.series.title, color=BLACK, |
62 | - font_name=self.font, font_size=self.height*self.margins[0]*0.6, x=self.width/2, y=self.height, | |
62 | + font_name=self.font, font_size=self.height*self.margins[0]*0.5, | |
63 | + x=self.width/2, y=self.height-(self.margins[1]), | |
63 | 64 | anchor_x='center', anchor_y='top') |
64 | 65 | heading.draw() |
65 | 66 | |
66 | 67 | def drawAxis(self, axis): # axis=0 is x, 1 is y |
67 | - limita = self.bounds[axis][1] | |
68 | - limitb = self.bounds[axis][0] | |
69 | - start = self.bounds[1-axis][0] | |
70 | - stop = self.bounds[1-axis][1] | |
68 | + limita = self.bounds[1-axis][1] | |
69 | + limitb = self.bounds[1-axis][0] | |
70 | + start = self.bounds[axis][0] | |
71 | + stop = self.bounds[axis][1] | |
71 | 72 | increment = float(stop-start)/self.lines[axis] |
72 | 73 | for pos in numpy.arange(start, stop+1, increment): |
73 | 74 | # Using fp arithmetic to avoid intermittent fencepost errors |
74 | 75 | pos = int(pos) |
75 | - if axis==0: | |
76 | - pyglet.graphics.draw(2, pyglet.gl.GL_LINES, ('v2i', (limita, pos, limitb, pos)), | |
76 | + if axis==0: # x axis, vertical lines | |
77 | + pyglet.graphics.draw(2, pyglet.gl.GL_LINES, ('v2i', (pos, limita, pos, limitb)), | |
77 | 78 | ('c3B', (0, 0, 0, 0, 0, 0))) |
78 | 79 | tag = pyglet.text.Label("123", color=BLACK, |
79 | - font_name=self.font, font_size=self.height*self.margins[1-axis]*0.3, | |
80 | + font_name=self.font, font_size=self.height*self.margins[1-axis]*0.28, | |
80 | 81 | x=pos, y=self.height*self.margins[axis], |
81 | 82 | anchor_x='left', anchor_y='top') |
82 | - if axis==1: | |
83 | - pyglet.graphics.draw(2, pyglet.gl.GL_LINES, ('v2i', (pos, limita, pos, limitb)), | |
83 | + axistitle = pyglet.text.Label(self.series.xname, color=BLACK, | |
84 | + font_name=self.font, font_size=self.height*self.margins[axis]*0.3, | |
85 | + x=self.width/2, y=0, | |
86 | + anchor_x='center', anchor_y='bottom') | |
87 | + if axis==1: # y axis, horizontal lines | |
88 | + pyglet.graphics.draw(2, pyglet.gl.GL_LINES, ('v2i', (limita, pos, limitb, pos)), | |
84 | 89 | ('c3B', (0, 0, 0, 0, 0, 0))) |
85 | 90 | tag = pyglet.text.Label("123", color=BLACK, |
86 | - font_name=self.font, font_size=self.width*self.margins[1-axis]*0.3, | |
87 | - x=self.width*self.margins[axis], y=pos, | |
91 | + font_name=self.font, font_size=self.width*self.margins[axis]*0.22, | |
92 | + x=self.width*self.margins[1-axis]*0.9, y=pos, | |
88 | 93 | anchor_x='right', anchor_y='center') |
89 | - | |
94 | + axistitle = pyglet.text.Label(self.series.yname, color=BLACK, | |
95 | + font_name=self.font, font_size=self.height*self.margins[axis]*0.3, | |
96 | + x=0, y=self.height/2, | |
97 | + anchor_x='left', anchor_y='center') | |
90 | 98 | tag.draw() |
91 | - axistitle = pyglet.text.Label(self.series.xname, color=BLACK, | |
92 | - font_name=self.font, font_size=self.height*self.margins[0]*0.3, x=self.width/2, y=0, | |
93 | - anchor_x='center', anchor_y='bottom') | |
99 | + | |
94 | 100 | axistitle.draw() |
95 | 101 | |
96 | 102 | |
... | ... |