def draw_multi_price_line(name, dict_data): line = Line() line.disable_xml_declaration = True line.js = [] line.x_label_rotation = 45 line.y_labels_major_every = 3 #line.show_legend = False line.legend_at_bottom = True line.print_values = False line.width = 1280 line.height = 720 line.value_formatter = lambda x:str(int(x)) #line.major_label_font_size = 20 #line.print_zeroes = True #line.show_minor_x_labels = True #line.show_minor_y_labels = True line.title = name min_y = None max_y = None for name in dict_data: #print(name) list_x, list_y = dict_data[name] line.add(name, list_y) min_list_y = min(list_y) max_list_y = max(list_y) if min_y == None or min_list_y < min_y : min_y = min_list_y if max_y == None or max_list_y > max_y : max_y = max_list_y if min_y == None : min_y = 0 if max_y == None : max_y = 0 line.range = (min_y-100, max_y+300) line.x_labels = map(str, list_x) line.y_labels = map(lambda x:x*100, range(int((min_y/100)-1), int((max_y/100+4)))) return line.render()
def draw_price_line(name, list_x, list_y): line = Line() line.disable_xml_declaration = True line.js = [] line.x_label_rotation = 45 line.y_labels_major_every = 3 line.show_legend = False line.print_values = False line.width = 1280 line.height = 720 line.value_formatter = lambda x:str(int(x)) #line.major_label_font_size = 20 #line.print_zeroes = True #line.show_minor_x_labels = True #line.show_minor_y_labels = True line.title = name digital_y = list(filter(lambda x:x != None, list_y)) if digital_y == [] : digital_y = [0] line.range = (min(digital_y)-100, max(digital_y)+300) line.x_labels = list_x line.y_labels = map(lambda x:x*100, range(int((min(digital_y)/100)-1), int((max(digital_y)/100+4)))) line.add(name, list_y) return line.render()
def build_line(self, data, col_2): COL_1_INDEX, COL_2_INDEX = 2, 3 range_1_from, range_1_to = \ BaseDataLoggerHandler.create_range(data, COL_1_INDEX) if col_2: range_2_from, range_2_to = \ BaseDataLoggerHandler.create_range(data, COL_2_INDEX) chart = Line( show_dots=False, fill=True if col_2 else True, show_x_guides=False, show_y_guides=True, range=(range_1_from, range_1_to), secondary_range=(range_2_from, range_2_to) if col_2 else None, x_label_rotation=70, title='Inverter Stats', style=BaseDataLoggerHandler.custom_style(col_2) ) chart.y_labels = self.resolve_y_labels( range(range_1_from, range_1_to + 1) ) return chart
def test_ylabels(): chart = Line() chart.x_labels = 'Red', 'Blue', 'Green' chart.y_labels = .0001, .0003, .0004, .00045, .0005 chart.add('line', [.0002, .0005, .00035]) return chart.render_response()
def test_ylabels(): chart = Line() chart.x_labels = "Red", "Blue", "Green" chart.y_labels = 0.0001, 0.0003, 0.0004, 0.00045, 0.0005 chart.add("line", [0.0002, 0.0005, 0.00035]) return chart.render_response()