code: def plot_power_factor_mu(self, temp=600, output='eig',
                               relaxation_time=1e-14, xlim=None):
          
          import matplotlib.pyplot as plt
          plt.figure(figsize=(9, 7))
          pf = self._bz.get_power_factor(relaxation_time=relaxation_time,
                                         output=output, doping_levels=False)[
              temp]
          plt.semilogy(self._bz.mu_steps, pf, linewidth=3.0)
          self._plot_bg_limits()
          self._plot_doping(temp)
          if output == 'eig':
              plt.legend(['PF$_1$', 'PF$_2$', 'PF$_3$'])
          if xlim is None:
              plt.xlim(-0.5, self._bz.gap + 0.5)
          else:
              plt.xlim(xlim)
          plt.ylabel("Power factor, ($\\mu$W/(mK$^2$))", fontsize=30.0)
          plt.xlabel("E-E$_f$ (eV)", fontsize=30.0)
          plt.xticks(fontsize=25)
          plt.yticks(fontsize=25)
          plt.tight_layout()
          return plt
docs: Plot the power factor in function of Fermi level. Semi-log plot
  
          Args:
              temp: the temperature
              xlim: a list of min and max fermi energy by default (0, and band
                  gap)
              tau: A relaxation time in s. By default none and the plot is by
                 units of relaxation time
  
          Returns:
              a matplotlib object