code: def plot_waveform(waveform, sample_rate):
      waveform = waveform.numpy()
  
      num_channels, num_frames = waveform.shape
      time_axis = torch.arange(0, num_frames) / sample_rate
  
      figure, axes = plt.subplots(num_channels, 1)
      if num_channels == 1:
          axes = [axes]
      for c in range(num_channels):
          axes[c].plot(time_axis, waveform[c], linewidth=1)
          axes[c].grid(True)
          if num_channels > 1:
              axes[c].set_ylabel(f"Channel {c+1}")
      figure.suptitle("waveform")
  
file_path: audio/examples/tutorials/audio_io_tutorial.py
imports: import torch
  import torchaudio
  import io
  import os
  import tarfile
  import tempfile
  import boto3
  import matplotlib.pyplot
  import requests
  from botocore import UNSIGNED
  from botocore.config import Config
  from IPython.display import Audio
  from torchaudio.utils import download_asset
label_desc: Use image node_id 2 for calling a global function with example usage: plot_waveform(waveform, sample_rate) without return types