code: def contour(f, vertexlabels=None, **kwargs):
      '''Contour line plot on a 2D triangle of a function evaluated at
      barycentric 2-simplex points.
  
      :param f: Function to evaluate on N x 3 ndarray of coordinates
      :type f: ``ufunc``
      :param vertexlabels: Labels for corners of plot in the order
          ``(a, b, c)`` where ``a == (1,0,0)``, ``b == (0,1,0)``,
          ``c == (0,0,1)``.
      :type vertexlabels: 3-tuple of strings.
      :param **kwargs: Arguments to :func:`plt.tricontour`.
      :type **kwargs: keyword arguments.'''
      return _contour(f, vertexlabels, contourfunc=plt.tricontour, **kwargsf contour(f, vertexlabels=None, **kwargs):
      '''Contour line plot on a 2D triangle of a function evaluated at
      barycentric 2-simplex points.
  
      :param f: Function to evaluate on N x 3 ndarray of coordinates
      :type f: ``ufunc``
      :param vertexlabels: Labels for corners of plot in the order
          ``(a, b, c)`` where ``a == (1,0,0)``, ``b == (0,1,0)``,
          ``c == (0,0,1)``.
      :type vertexlabels: 3-tuple of strings.
      :param **kwargs: Arguments to :func:`plt.tricontour`.
      :type **kwargs: keyword arguments.'''
      return _contour(f, vertexlabels, contourfunc=plt.tricontour, **kwargs)
docs: Contour line plot on a 2D triangle of a function evaluated at
      barycentric 2-simplex points.
  
      :param f: Function to evaluate on N x 3 ndarray of coordinates
      :type f: ``ufunc``
      :param vertexlabels: Labels for corners of plot in the order
          ``(a, b, c)`` where ``a == (1,0,0)``, ``b == (0,1,0)``,
          ``c == (0,0,1)``.
      :type vertexlabels: 3-tuple of strings.
      :param **kwargs: Arguments to :func:`plt.tricontour`.
      :type **kwargs: keyword arguments.