def gen_legend(self): if self.b_comp and not self.b_bar and (not self.b_chr or not self.b_many): self.graph_legend.append([gm_default_color_parent , "Whole track"]) self.graph_legend.append([gm_default_color_selection , "Selection"]) if self.b_many and self.b_chr: for track in self.tracks: self.graph_legend.append([common.number_to_color(track.number) , track.name]) for l in self.graph_legend: l[1] = common.wrap_string(l[1], 25) self.graph_legend = [[l[0], common.wrap_string(l[1], 52)] for l in self.graph_legend]
def gen_plot_elements(self): if self.b_chr:# chr: -----YES----- self.major_ystep = self.graph_height / float(len(self.chrs)) self.minor_ystep = self.major_ystep*self.hjump / float(len(self.tracks)) for i, chr in enumerate(self.chrs): for j, track in enumerate(self.tracks): tmp_subtracks = [s for s in self.subtracks if s.track == track and s.chr == chr] tmp_position = i*self.major_ystep+j*self.minor_ystep tmp_height = self.minor_ystep if self.b_many: tmp_color = common.number_to_color(track.number) else: tmp_color = gm_default_plot_color self.elements += [gmPlotElement.Factory(self.request, tmp_subtracks, tmp_position, self.minor_ystep, tmp_color)] else:# chr: -----NO----- self.major_ystep = self.graph_height / float(len(self.tracks)) for i, track in enumerate(self.tracks): if True: tmp_subtracks = [s for s in self.subtracks if s.track == track] tmp_position = i*self.major_ystep tmp_height = self.hjump self.elements += [gmPlotElement.Factory(self.request, tmp_subtracks, tmp_position, tmp_height)]