code: def get_plot(self, ylim=None, units="thz"):
          
  
          u = freq_units(units)
  
          plt = pretty_plot(12, 8)
  
          band_linewidth = 1
  
          data = self.bs_plot_data()
          for d in range(len(data['distances'])):
              for i in range(self._nb_bands):
                  plt.plot(data['distances'][d],
                           [data['frequency'][d][i][j] * u.factor
                            for j in range(len(data['distances'][d]))], 'b-',
                           linewidth=band_linewidth)
  
          self._maketicks(plt)
  
          # plot y=0 line
          plt.axhline(0, linewidth=1, color='k')
  
          # Main X and Y Labels
          plt.xlabel(r'$\mathrm{Wave\ Vector}$', fontsize=30)
          ylabel = r'$\mathrm{{Frequencies\ ({})}}$'.format(u.label)
          plt.ylabel(ylabel, fontsize=30)
  
          # X range (K)
          # last distance point
          x_max = data['distances'][-1][-1]
          plt.xlim(0, x_max)
  
          if ylim is not None:
              plt.ylim(ylim)
  
          plt.tight_layout()
  
          return plt
docs: Get a matplotlib object for the bandstructure plot.
  
          Args:
              ylim: Specify the y-axis (frequency) limits; by default None let
                  the code choose.
              units: units for the frequencies. Accepted values thz, ev, mev, ha, cm-1, cm^-1.