def display_multi(annotations, fig_kw=None, meta=True, **kwargs):
if fig_kw is None:<EOL><INDENT>fig_kw = dict()<EOL><DEDENT>fig_kw.setdefault('<STR_LIT>', True)<EOL>fig_kw.setdefault('<STR_LIT>', True)<EOL>display_annotations = []<EOL>for ann in annotations:<EOL><INDENT>for namespace in VIZ_MAPPING:<EOL><INDENT>if can_convert(ann, namespace):<EOL><INDENT>display_annotations.append(ann)<EOL>break<EOL><DEDENT><DEDENT><DEDENT>if not len(display_annotations):<EOL><INDENT>raise ParameterError('<STR_LIT>')<EOL><DEDENT>fig, axs = plt.subplots(nrows=len(display_annotations), ncols=<NUM_LIT:1>, **fig_kw)<EOL>if len(display_annotations) == <NUM_LIT:1>:<EOL><INDENT>axs = [axs]<EOL><DEDENT>for ann, ax in zip(display_annotations, axs):<EOL><INDENT>kwargs['<STR_LIT>'] = ax<EOL>display(ann, meta=meta, **kwargs)<EOL><DEDENT>return fig, axs<EOL>
Display multiple annotations with shared axes

    Parameters
    ----------
    annotations : jams.AnnotationArray
        A collection of annotations to display

    fig_kw : dict
        Keyword arguments to `plt.figure`

    meta : bool
        If `True`, display annotation metadata for each annotation

    kwargs
        Additional keyword arguments to the `mir_eval.display` routines

    Returns
    -------
    fig
        The created figure
    axs
        List of subplot axes corresponding to each displayed annotation