code: def plot_labels(labels, lattice=None, coords_are_cartesian=False, ax=None,
                  **kwargs):
      
      ax, fig, plt = get_ax3d_fig_plt(ax)
  
      if "color" not in kwargs:
          kwargs["color"] = "b"
      if "size" not in kwargs:
          kwargs["size"] = 25
  
      for k, coords in labels.items():
          label = k
          if k.startswith("\\") or k.find("_") != -1:
              label = "$" + k + "$"
          off = 0.01
          if coords_are_cartesian:
              coords = np.array(coords)
          else:
              if lattice is None:
                  raise ValueError(
                      "coords_are_cartesian False requires the lattice")
              coords = lattice.get_cartesian_coords(coords)
          ax.text(*(coords + off), s=label, **kwargs)
  
      return fig, ax
docs: Adds labels to a matplotlib Axes
  
      Args:
          labels: dict containing the label as a key and the coordinates as value.
          lattice: Lattice object used to convert from reciprocal to cartesian coordinates
          coords_are_cartesian: Set to True if you are providing.
              coordinates in cartesian coordinates. Defaults to False.
              Requires lattice if False.
          ax: matplotlib :class:`Axes` or None if a new figure should be created.
          kwargs: kwargs passed to the matplotlib function 'text'. Color defaults to blue
              and size to 25.
  
      Returns:
          matplotlib figure and matplotlib ax