code: def p(N=3):
      """Return *N* distinct plot objects."""
      template = (
          ggplot(mtcars, aes(x="wt", y="mpg", label="name"))
          + geom_text()
      )
      for i in range(1, N + 1):
          yield template + ggtitle("%d of %d" % (i, N))
  
file_path: plotnine/tests/test_save_as_pdf_pages.py
imports: import warnings
  from pathlib import Path
  import matplotlib.pyplot
  import pytest
  from plotnine import aes, geom_text, ggplot, ggtitle, theme
  from plotnine.data import mtcars
  from plotnine.exceptions import PlotnineError, PlotnineWarning
  from plotnine.ggplot import save_as_pdf_pages
label_desc: Use image node_id 1 for calling a global function with example usage: p(N) without return types