code: def plot_segmentation_data_frame(self, segmented_data_frame, axis='mag_sum_acc', figsize=(10, 5)):
          
          # fix this!!
          colors = 'bgrcmykwbgrcmykwbgrcmykw'
          
          keys = np.unique(segmented_data_frame['segmentation'])
          
          fig, ax = plt.subplots()
          fig.set_size_inches(figsize[0], figsize[1])
          
          segmented_data_frame[axis].plot(ax=ax)
  
          for i, k in enumerate(keys):
              patch = segmented_data_frame['segmentation'].loc[segmented_data_frame['segmentation'] == k].index
              for p in patch:
                  ax.axvline(p, color=colors[i], alpha=0.1)
  
          legend = [mpatches.Patch(color=colors[i], label="{}".format(k)) for i, k in enumerate(keys)]
  
          plt.legend(handles=legend)
  
          plt.show()
docs: Utility method used to visualize how the segmentation dictionary interacts with the time series.
  
              :param segmented_data_frame: The segmented data frame. It should have x, y, z and segmentation columns.
              :type segmented_data_frame: pandas.DataFrame
              :param axis: The axis which we want to plot. We can choose from x, y, z and mag_sum_acc ('mag_acc_sum' default).
              :type axis: str
              :param figsize: The size of the figure where we will plot the segmentation on top of the provided time series ((10, 5) default).
              :type figsize: tuple