Hi @OriolAbril, I made a mistake as the KeyError: 0 I reported was not being thrown from the az.plot_ppc method but from later down in my code. What confused me was that the call to az.plot_ppc(posterior) did not show the plot automatically, it was necessary to call it like this:
az.plot_ppc(posterior, show=True)
After adding the show argument I am able to see the plot, and can confirm that the code snippet I posted above does work! Thanks for the help.