def _draw_title(self, gc, label=None, axis_offset=None): """ Draws the title for the axis. """ if label is None: title_label = Label(text=self.title, font=self.title_font, color=self.title_color, rotate_angle=self.title_angle) else: title_label = label # get the _rotated_ bounding box of the label tl_bounds = array(title_label.get_bounding_box(gc), float64) text_center_to_corner = -tl_bounds/2.0 # which axis are we moving away from the axis line along? axis_index = self._major_axis.argmin() if self.title_spacing != 'auto': axis_offset = self.title_spacing if (self.title_spacing) and (axis_offset is None ): if not self.ticklabel_cache: axis_offset = 25 else: axis_offset = max([l._bounding_box[axis_index] for l in self.ticklabel_cache]) * 1.3 offset = (self._origin_point+self._end_axis_point)/2 axis_dist = self.tick_out + tl_bounds[axis_index]/2.0 + axis_offset offset -= self._inside_vector * axis_dist offset += text_center_to_corner gc.translate_ctm(*offset) title_label.draw(gc) gc.translate_ctm(*(-offset)) return
def _compute_labels(self, gc): """Generates the labels for tick marks. Overrides PlotAxis. """ try: self.ticklabel_cache = [] for text in self._tick_label_list: ticklabel = Label(text=text, font=self.tick_label_font, color=self.tick_label_color, rotate_angle=self.label_rotation) self.ticklabel_cache.append(ticklabel) self._tick_label_bounding_boxes = [array(ticklabel.get_bounding_box(gc), float64) for ticklabel in self.ticklabel_cache] except: print_exc() return
def _compute_labels(self, gc): """Generates the labels for tick marks. Overrides PlotAxis. """ try: self.ticklabel_cache = [] for text in self._tick_label_list: ticklabel = Label(text=text, font=self.tick_label_font, color=self.tick_label_color, rotate_angle=self.label_rotation) self.ticklabel_cache.append(ticklabel) self._tick_label_bounding_boxes = [ array(ticklabel.get_bounding_box(gc), float64) for ticklabel in self.ticklabel_cache ] except: print_exc() return