<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def plot_high_levels_data(self):
 """ Complicated function that draws the high level mean plot on canvas4, draws all specimen, sample, or site interpretations according to the UPPER_LEVEL_SHOW variable, draws the fisher mean or fisher mean by polarity of all interpretations displayed, draws sample orientation check if on, and if interpretation editor is open it calls the interpretation editor to have it draw the same things. """

#        self.toolbar4.home()
        high_level = self.level_box.GetValue()
        self.UPPER_LEVEL_NAME = self.level_names.GetValue()
        self.UPPER_LEVEL_MEAN = self.mean_type_box.GetValue()

        draw_net(self.high_level_eqarea)
        what_is_it = self.level_box.GetValue()+": "+self.level_names.GetValue()
        self.high_level_eqarea.text(-1.2, 1.15, what_is_it, {
                                    'family': self.font_type, 'fontsize': 10*self.GUI_RESOLUTION, 'style': 'normal', 'va': 'center', 'ha': 'left'})
        if self.ie_open:
            self.ie.draw_net()
            self.ie.write(what_is_it)

        # plot elements directions
        self.plot_high_level_elements()

        # plot elements means
        self.plot_high_level_means()

        # update high level stats after plotting in case of change
        self.update_high_level_stats()

        # check sample orietation
        if self.check_orient_on:
            self.calc_and_plot_sample_orient_check()

        self.canvas4.draw()

        if self.ie_open:
            self.ie.draw()