def calculate_bottom_margin(self):
bb = <NUM_LIT:7><EOL>if self.key and self.key_position == '<STR_LIT>':<EOL><INDENT>bb += len(self.data) * (self.font_size + <NUM_LIT:5>)<EOL>bb += <NUM_LIT:10><EOL><DEDENT>if self.show_x_labels:<EOL><INDENT>max_x_label_height_px = self.x_label_font_size<EOL>if self.rotate_x_labels:<EOL><INDENT>label_lengths = map(len, self.get_x_labels())<EOL>max_x_label_len = functools.reduce(max, label_lengths)<EOL>max_x_label_height_px *= <NUM_LIT> * max_x_label_len<EOL><DEDENT>bb += max_x_label_height_px<EOL>if self.stagger_x_labels:<EOL><INDENT>bb += max_x_label_height_px + <NUM_LIT:10><EOL><DEDENT><DEDENT>if self.show_x_title:<EOL><INDENT>bb += self.x_title_font_size + <NUM_LIT:5><EOL><DEDENT>self.border_bottom = bb<EOL>
Calculate the margin in pixels below the plot area, setting
border_bottom.