134 | def draw_plots(self, column_x, column_y, column_hue): |
135 | """ |
136 | Function that draws plot in the panel. |
137 | |
138 | Args: |
139 | column_x --> 1D dataframe: dataframe column extracted from df |
140 | (i.e. column_x = df[column_x_name]) as x axis data |
141 | column_y --> 1D dataframe: dataframe column extracted from df |
142 | (i.e. column_y = df[column_y_name]) as y axis data |
143 | column_hue --> 1D dataframe: dataframe column extracted from df |
144 | (i.e. column_hue = df[column_hue_name]) as legend data |
145 | |
146 | Returns: None |
147 | """ |
148 | |
149 | |
150 | self.box_axes.clear() |
151 | self.violin_axes.clear() |
152 | |
153 | |
154 | try: |
155 | sns.boxplot(x=column_x, y=column_y, hue=column_hue, data=self.df, ax=self.box_axes) |
156 | except ValueError as e: |
157 | |
158 | _log_message = "\nBox plot failed due to error:\n--> {}".format(e) |
159 | pub.sendMessage("LOG_MESSAGE", log_message=_log_message) |
160 | |
161 | |
162 | try: |
163 | sns.violinplot(x=column_x, y=column_y, hue=column_hue, data=self.df, split=True, ax=self.violin_axes) |
164 | except ValueError as e: |
165 | |
166 | _log_message = "\nVolin plot failed due to error:\n--> {}".format(e) |
167 | pub.sendMessage("LOG_MESSAGE", log_message=_log_message) |
168 | |
169 | |
170 | self.box_axes.set_title("Box Plot for {} and {}".format(column_x, column_y)) |
171 | self.box_axes.set_ylabel(column_y) |
172 | self.box_axes.set_xlabel(column_x) |
173 | self.box_canvas.draw() |
174 | |
175 | self.violin_axes.set_title("Violin Plot for {} and {}".format(column_x, column_y)) |
176 | self.violin_axes.set_ylabel(column_y) |
177 | self.violin_axes.set_xlabel(column_x) |
178 | self.violin_canvas.draw() |