Plot node data to an axes object

        Parameters
        ----------
        ax : axes object
            axes to plot to
        nid : int
            node id pointing to the respective data set
        cmap : string, optional
            color map to use. Default: jet
        vmin : float, optional
            Minimum colorbar value
        vmax : float, optional
            Maximum colorbar value

        Returns
        -------

def plot_nodes_pcolor_to_ax(self, ax, nid, **kwargs):
        """Plot node data to an axes object

        Parameters
        ----------
        ax : axes object
            axes to plot to
        nid : int
            node id pointing to the respective data set
        cmap : string, optional
            color map to use. Default: jet
        vmin : float, optional
            Minimum colorbar value
        vmax : float, optional
            Maximum colorbar value

        Returns
        -------

        """
        fig = ax.get_figure()
        x = self.grid.nodes['presort'][:, 1]
        z = self.grid.nodes['presort'][:, 2]
        ax.scatter(x, z)
        xz = np.vstack((x, z)).T

        # generate grid
        X, Z = np.meshgrid(
            np.linspace(x.min(), x.max(), 100),
            np.linspace(z.min(), z.max(), 100),
        )

        values = np.array(self.nodeman.nodevals[nid])
        # linear
        # cubic
        cint = scipy.interpolate.griddata(
            xz,
            values,
            (X, Z),
            method='linear',
            # method='linear',
            # method='nearest',
            fill_value=np.nan,
        )
        cint_ma = np.ma.masked_invalid(cint)

        pc = ax.pcolormesh(
            X, Z,
            cint_ma,
            cmap=kwargs.get('cmap', 'jet'),
            vmin=kwargs.get('vmin', None),
            vmax=kwargs.get('vmax', None),
        )
        if kwargs.get('plot_colorbar', False):
            divider = make_axes_locatable(ax)
            cbposition = kwargs.get('cbposition', 'vertical')
            if cbposition == 'horizontal':
                ax_cb = divider.new_vertical(
                    size=0.1, pad=0.4, pack_start=True
                )
            elif cbposition == 'vertical':
                ax_cb = divider.new_horizontal(
                    size=0.1, pad=0.4,
                )
            else:
                raise Exception('cbposition not recognized')

            ax.get_figure().add_axes(ax_cb)

            cb = fig.colorbar(
                pc,
                cax=ax_cb,
                orientation=cbposition,
                label=kwargs.get('cblabel', ''),
                ticks=mpl.ticker.MaxNLocator(kwargs.get('cbnrticks', 3)),
                format=kwargs.get('cbformat', None),
                extend='both',
            )

        no_elecs = kwargs.get('no_elecs', False)
        if self.grid.electrodes is not None and no_elecs is not True:
            ax.scatter(
                self.grid.electrodes[:, 1],
                self.grid.electrodes[:, 2],
                color=self.grid.props['electrode_color'],
                # clip_on=False,
            )

            return fig, ax, pc, cb
        return fig, ax, pc