diff --git a/verde/base/base_classes.py b/verde/base/base_classes.py
index c0e944f..40e15fb 100644
--- a/verde/base/base_classes.py
+++ b/verde/base/base_classes.py
@@ -300,7 +300,9 @@ class BaseGridder(BaseEstimator):
         if projection is None:
             data = check_data(self.predict(coordinates))
         else:
-            data = check_data(self.predict(projection(*coordinates)))
+            data = check_data(
+                self.predict(project_coordinates(coordinates, projection))
+            )
         data_names = get_data_names(data, data_names)
         coords = {dims[1]: coordinates[0][0, :], dims[0]: coordinates[1][:, 0]}
         attrs = {"metadata": "Generated by {}".format(repr(self))}
@@ -378,7 +380,9 @@ class BaseGridder(BaseEstimator):
         if projection is None:
             data = check_data(self.predict(coordinates))
         else:
-            data = check_data(self.predict(projection(*coordinates)))
+            data = check_data(
+                self.predict(project_coordinates(coordinates, projection))
+            )
         data_names = get_data_names(data, data_names)
         columns = [(dims[0], coordinates[1]), (dims[1], coordinates[0])]
         columns.extend(zip(data_names, data))
@@ -480,14 +484,14 @@ class BaseGridder(BaseEstimator):
         # geographic coordinates since we don't do actual distances on a
         # sphere).
         if projection is not None:
-            point1 = projection(*point1)
-            point2 = projection(*point2)
+            point1 = project_coordinates(point1, projection)
+            point2 = project_coordinates(point2, projection)
         coordinates, distances = profile_coordinates(point1, point2, size, **kwargs)
         data = check_data(self.predict(coordinates))
         # Project the coordinates back to have geographic coordinates for the
         # profile but Cartesian distances.
         if projection is not None:
-            coordinates = projection(*coordinates, inverse=True)
+            coordinates = project_coordinates(coordinates, projection, inverse=True)
         data_names = get_data_names(data, data_names)
         columns = [
             (dims[0], coordinates[1]),
@@ -506,6 +510,42 @@ class BaseGridder(BaseEstimator):
         return self.dims
 
 
+def project_coordinates(coordinates, projection, **kwargs):
+    """
+    Apply projection to given coordiantes
+
+    Allows to apply projections to any number of coordinates, assuming
+    that the first ones are ``longitude`` and ``latitude``.
+
+    Examples
+    --------
+
+    >>> # Define a custom projection function
+    >>> def projection(lon, lat, inverse=False):
+    ...     "Simple projection of geographic coordinates"
+    ...     radius = 1000
+    ...     if inverse:
+    ...         return (lon / radius, lat / radius)
+    ...     return (lon * radius, lat * radius)
+
+    >>> # Apply the projection to a set of coordinates containing:
+    >>> # longitude, latitude and height
+    >>> coordinates = (1., -2., 3.)
+    >>> project_coordinates(coordinates, projection)
+    (1000.0, -2000.0, 3.0)
+
+    >>> # Apply the inverse projection
+    >>> coordinates = (-500.0, 1500.0, -19.0)
+    >>> project_coordinates(coordinates, projection, inverse=True)
+    (-0.5, 1.5, -19.0)
+
+    """
+    proj_coordinates = projection(*coordinates[:2], **kwargs)
+    if len(coordinates) > 2:
+        proj_coordinates += tuple(coordinates[2:])
+    return proj_coordinates
+
+
 def get_data_names(data, data_names):
     """
     Get default names for data fields if none are given based on the data.

Projections getting more than two coordinates
**Description of the problem**

When using any subclass of `BaseGridder` to predict values through the `grid`, `scatter` or `profile` methods, we can optionally pass a `projection` in order to get, for example, a regular grid on geographic coordinates even if the gridder works in Cartesian.
These `projections` are expected to be functions that takes two coordinates (e.g. `longitude` and `latitude`) and return the projected coordinates (`easting` and `northing`, following the same example). But if we also pass some `extra_coords`, the `projection` will get the entire set of coordinates rather only the horizontal ones.


Raised on fatiando/harmonica#170
<!--
Please be as detailed as you can when describing an issue. The more information
we have, the easier it will be for us to track this down.
-->



**Full code that generated the error**

<!--
Include any data files or inputs required to run the code. It really helps if
we can run the code on our own machines.
-->

```python
import pyproj
import numpy as np
import verde as vd


# Fetch data
data = vd.datasets.fetch_texas_wind()

# Project coordinates
projection = pyproj.Proj("merc")
easting, northing = projection(data.longitude.values, data.latitude.values)

# Create a new random heights coordinates
height = np.random.random(easting.size)
coordinates = (easting, northing, height)

# Fit the spline gridder
spline = vd.Spline(damping=1e-10, mindist=100e3)
spline.fit(coordinates, data.air_temperature_c)

# Interpolate into a regular grid defined in geographic coordinates by also passing
# a extra coordinate
region = (
    data.longitude.min(),
    data.longitude.max(),
    data.latitude.min(),
    data.latitude.max(),
)
spline.grid(spacing=0.1, region=region, projection=projection, extra_coords=1)

```


**Full error message**

```
Traceback (most recent call last):
  File "projections.py", line 29, in <module>
    spline.grid(spacing=0.1, region=region, projection=projection, extra_coords=1)
  File "/home/santi/git/verde/verde/base/base_classes.py", line 303, in grid
    data = check_data(self.predict(projection(*coordinates)))
  File "/home/santi/.miniconda3/envs/verde/lib/python3.7/site-packages/pyproj/proj.py", line 193, in __call__
    lon, lat = args
ValueError: too many values to unpack (expected 2)
```



**System information**

* Operating system: Manjaro
* Python installation (Anaconda, system, ETS): Anaconda
* Version of Python: 3.7.6
* Version of this package: v1.4.0+7.g644037e
* If using conda, paste the output of `conda list` below:

<details>
<summary>output of conda list</summary>
<pre>

# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                        main    conda-forge
alabaster                 0.7.12                     py_0    conda-forge
appdirs                   1.4.3                      py_1    conda-forge
astroid                   2.3.3                    py37_0    conda-forge
attrs                     19.3.0                     py_0    conda-forge
babel                     2.7.0                      py_0    conda-forge
black                     19.10b0                  py37_0    conda-forge
bokeh                     1.4.0                    py37_0    conda-forge
bzip2                     1.0.8                h516909a_2    conda-forge
ca-certificates           2020.4.5.1           hecc5488_0    conda-forge
cartopy                   0.17.0          py37h423102d_1009    conda-forge
certifi                   2020.4.5.1       py37hc8dfbb8_0    conda-forge
cffi                      1.13.2           py37h8022711_0    conda-forge
chardet                   3.0.4                 py37_1003    conda-forge
click                     7.0                        py_0    conda-forge
cloudpickle               1.2.2                      py_1    conda-forge
coverage                  5.1              py37h8f50634_0    conda-forge
cryptography              2.8              py37h72c5cf5_1    conda-forge
cycler                    0.10.0                     py_2    conda-forge
cytoolz                   0.10.1           py37h516909a_0    conda-forge
dask                      2.9.0                      py_0    conda-forge
dask-core                 2.9.0                      py_0    conda-forge
dbus                      1.13.6               he372182_0    conda-forge
distributed               2.9.0                      py_0    conda-forge
docutils                  0.15.2                   py37_0    conda-forge
entrypoints               0.3                   py37_1000    conda-forge
expat                     2.2.5             he1b5a44_1004    conda-forge
flake8                    3.7.9            py37hc8dfbb8_1    conda-forge
fontconfig                2.13.1            h86ecdb6_1001    conda-forge
freetype                  2.10.0               he983fc9_1    conda-forge
fsspec                    0.6.1                      py_0    conda-forge
geos                      3.8.0                he1b5a44_0    conda-forge
gettext                   0.19.8.1          hc5be6a0_1002    conda-forge
glib                      2.58.3          py37h6f030ca_1002    conda-forge
gst-plugins-base          1.14.5               h0935bb2_0    conda-forge
gstreamer                 1.14.5               h36ae1b5_0    conda-forge
heapdict                  1.0.1                      py_0    conda-forge
icu                       64.2                 he1b5a44_1    conda-forge
idna                      2.8                   py37_1000    conda-forge
imagesize                 1.1.0                      py_0    conda-forge
importlib_metadata        1.2.0                    py37_0    conda-forge
isort                     4.3.21                   py37_0    conda-forge
jinja2                    2.10.3                     py_0    conda-forge
joblib                    0.14.0                     py_0    conda-forge
jpeg                      9c                h14c3975_1001    conda-forge
kiwisolver                1.1.0            py37hc9558a2_0    conda-forge
lazy-object-proxy         1.4.3            py37h516909a_0    conda-forge
ld_impl_linux-64          2.33.1               h53a641e_7    conda-forge
libblas                   3.8.0               14_openblas    conda-forge
libcblas                  3.8.0               14_openblas    conda-forge
libclang                  9.0.0           default_hde54327_4    conda-forge
libffi                    3.2.1             he1b5a44_1006    conda-forge
libgcc-ng                 9.2.0                hdf63c60_0    conda-forge
libgfortran-ng            7.3.0                hdf63c60_2    conda-forge
libiconv                  1.15              h516909a_1005    conda-forge
liblapack                 3.8.0               14_openblas    conda-forge
libllvm8                  8.0.1                hc9558a2_0    conda-forge
libllvm9                  9.0.0                hc9558a2_3    conda-forge
libopenblas               0.3.7                h5ec1e0e_5    conda-forge
libpng                    1.6.37               hed695b0_0    conda-forge
libstdcxx-ng              9.2.0                hdf63c60_0    conda-forge
libtiff                   4.1.0                hc3755c2_1    conda-forge
libuuid                   2.32.1            h14c3975_1000    conda-forge
libxcb                    1.13              h14c3975_1002    conda-forge
libxkbcommon              0.9.1                hebb1f50_0    conda-forge
libxml2                   2.9.10               hee79883_0    conda-forge
llvmlite                  0.30.0           py37h8b12597_1    conda-forge
locket                    0.2.0                      py_2    conda-forge
lz4-c                     1.8.3             he1b5a44_1001    conda-forge
markupsafe                1.1.1            py37h516909a_0    conda-forge
matplotlib                3.1.2                    py37_1    conda-forge
matplotlib-base           3.1.2            py37h250f245_1    conda-forge
mccabe                    0.6.1                      py_1    conda-forge
more-itertools            8.0.2                      py_0    conda-forge
msgpack-python            0.6.2            py37hc9558a2_0    conda-forge
mypy_extensions           0.4.3                    py37_0    conda-forge
ncurses                   6.1               hf484d3e_1002    conda-forge
nose                      1.3.7                 py37_1003    conda-forge
nspr                      4.24                 he1b5a44_0    conda-forge
nss                       3.47                 he751ad9_0    conda-forge
numba                     0.46.0           py37hb3f55d8_1    conda-forge
numpy                     1.18.4           py37h8960a57_0    conda-forge
numpydoc                  1.0.0              pyh9f0ad1d_0    conda-forge
olefile                   0.46                       py_0    conda-forge
openssl                   1.1.1g               h516909a_0    conda-forge
owslib                    0.19.0                     py_1    conda-forge
packaging                 19.2                       py_0    conda-forge
pandas                    1.0.3            py37h0da4684_1    conda-forge
partd                     1.0.0                      py_0    conda-forge
pathspec                  0.6.0                      py_0    conda-forge
pcre                      8.43                 he1b5a44_0    conda-forge
pillow                    6.2.1            py37hd70f55b_1    conda-forge
pip                       20.1.1                     py_1    conda-forge
pluggy                    0.13.0                   py37_0    conda-forge
pooch                     1.1.1                      py_0    conda-forge
proj                      6.2.1                hc80f0dc_0    conda-forge
psutil                    5.6.7            py37h516909a_0    conda-forge
pthread-stubs             0.4               h14c3975_1001    conda-forge
py                        1.8.0                      py_0    conda-forge
pycodestyle               2.5.0                      py_0    conda-forge
pycparser                 2.19                     py37_1    conda-forge
pyepsg                    0.4.0                      py_0    conda-forge
pyflakes                  2.1.1                      py_0    conda-forge
pygments                  2.5.2                      py_0    conda-forge
pykdtree                  1.3.1           py37h03ebfcd_1003    conda-forge
pylint                    2.4.4                    py37_0    conda-forge
pyopenssl                 19.1.0                   py37_0    conda-forge
pyparsing                 2.4.5                      py_0    conda-forge
pyproj                    2.4.2.post1      py37h12732c1_0    conda-forge
pyqt                      5.12.3           py37hcca6a23_1    conda-forge
pyqt5-sip                 4.19.18                  pypi_0    pypi
pyqtwebengine             5.12.1                   pypi_0    pypi
pyshp                     2.1.0                      py_0    conda-forge
pysocks                   1.7.1                    py37_0    conda-forge
pytest                    5.4.2            py37hc8dfbb8_0    conda-forge
pytest-cov                2.9.0              pyh9f0ad1d_0    conda-forge
pytest-mpl                0.11                       py_1    conda-forge
python                    3.7.6           h8356626_5_cpython    conda-forge
python-dateutil           2.8.1                      py_0    conda-forge
python_abi                3.7                     1_cp37m    conda-forge
pytz                      2019.3                     py_0    conda-forge
pyyaml                    5.2              py37h516909a_0    conda-forge
qt                        5.12.5               hd8c4c69_1    conda-forge
readline                  8.0                  hf8c457e_0    conda-forge
regex                     2019.12.9        py37h516909a_0    conda-forge
requests                  2.22.0                   py37_1    conda-forge
scikit-learn              0.23.1           py37h8a51577_0    conda-forge
scipy                     1.4.1            py37ha3d9a3c_3    conda-forge
setuptools                42.0.2                   py37_0    conda-forge
shapely                   1.6.4           py37h5d51c17_1007    conda-forge
six                       1.13.0                   py37_0    conda-forge
snowballstemmer           2.0.0                      py_0    conda-forge
sortedcontainers          2.1.0                      py_0    conda-forge
sphinx                    2.2.1                      py_0    conda-forge
sphinx-gallery            0.7.0                      py_0    conda-forge
sphinx_rtd_theme          0.4.3                      py_0    conda-forge
sphinxcontrib-applehelp   1.0.1                      py_0    conda-forge
sphinxcontrib-devhelp     1.0.1                      py_0    conda-forge
sphinxcontrib-htmlhelp    1.0.2                      py_0    conda-forge
sphinxcontrib-jsmath      1.0.1                      py_0    conda-forge
sphinxcontrib-qthelp      1.0.2                      py_0    conda-forge
sphinxcontrib-serializinghtml 1.1.3                      py_0    conda-forge
sqlite                    3.30.1               hcee41ef_0    conda-forge
tblib                     1.4.0                      py_0    conda-forge
threadpoolctl             2.0.0              pyh5ca1d4c_0    conda-forge
tk                        8.6.10               hed695b0_0    conda-forge
toml                      0.10.0                     py_0    conda-forge
toolz                     0.10.0                     py_0    conda-forge
tornado                   6.0.3            py37h516909a_0    conda-forge
typed-ast                 1.4.0            py37h516909a_0    conda-forge
typing_extensions         3.7.4.1                  py37_0    conda-forge
urllib3                   1.25.7                   py37_0    conda-forge
verde                     1.2.0+4.g3f2c362           dev_0    <develop>
wcwidth                   0.1.7                      py_1    conda-forge
wheel                     0.33.6                   py37_0    conda-forge
wrapt                     1.11.2           py37h516909a_0    conda-forge
xarray                    0.15.1                     py_0    conda-forge
xorg-libxau               1.0.9                h14c3975_0    conda-forge
xorg-libxdmcp             1.1.3                h516909a_0    conda-forge
xz                        5.2.4             h14c3975_1001    conda-forge
yaml                      0.2.2                h516909a_1    conda-forge
zict                      1.0.0                      py_0    conda-forge
zipp                      0.6.0                      py_0    conda-forge
zlib                      1.2.11            h516909a_1006    conda-forge
zstd                      1.4.4                h3b9ef0a_1    conda-forge


</pre>
</details>

diff --git a/verde/tests/test_base.py b/verde/tests/test_base.py
index d637bd4..ad8ea59 100644
--- a/verde/tests/test_base.py
+++ b/verde/tests/test_base.py
@@ -201,6 +201,70 @@ def test_basegridder_projection():
     npt.assert_allclose(prof.distance, distance_true)
 
 
+def test_basegridder_projection_multiple_coordinates():
+    "Test BaseGridder when passing in a projection with multiple coordinates"
+
+    # Lets say the projection is doubling the coordinates
+    def proj(lon, lat, inverse=False):
+        "Project from the new coordinates to the original"
+        if inverse:
+            return (lon / 2, lat / 2)
+        return (lon * 2, lat * 2)
+
+    # Values in "geographic" coordinates
+    region = (0, 10, -10, -5)
+    shape = (51, 31)
+    angular, linear = 2, 100
+    coordinates = scatter_points(region, 1000, random_state=0, extra_coords=(1, 2))
+    data = angular * coordinates[0] + linear
+    # Project before passing to our Cartesian gridder
+    proj_coordinates = proj(coordinates[0], coordinates[1]) + coordinates[2:]
+    grd = PolyGridder().fit(proj_coordinates, data)
+
+    # Check the estimated coefficients
+    # The grid is estimated in projected coordinates (which are twice as large)
+    # so the rate of change (angular) should be half to get the same values.
+    npt.assert_allclose(grd.coefs_, [linear, angular / 2])
+
+    # The actual values for a grid
+    coordinates_true = grid_coordinates(region, shape, extra_coords=(13, 17))
+    data_true = angular * coordinates_true[0] + linear
+
+    # Check the scatter
+    scat = grd.scatter(
+        region, 1000, random_state=0, projection=proj, extra_coords=(13, 17)
+    )
+    npt.assert_allclose(scat.scalars, data)
+    npt.assert_allclose(scat.easting, coordinates[0])
+    npt.assert_allclose(scat.northing, coordinates[1])
+
+    # Check the grid
+    grid = grd.grid(region, shape, projection=proj, extra_coords=(13, 17))
+    npt.assert_allclose(grid.scalars.values, data_true)
+    npt.assert_allclose(grid.easting.values, coordinates_true[0][0, :])
+    npt.assert_allclose(grid.northing.values, coordinates_true[1][:, 0])
+
+    # Check the profile
+    prof = grd.profile(
+        (region[0], region[-1]),
+        (region[1], region[-1]),
+        shape[1],
+        projection=proj,
+        extra_coords=(13, 17),
+    )
+    npt.assert_allclose(prof.scalars, data_true[-1, :])
+    # Coordinates should still be evenly spaced since the projection is a
+    # multiplication.
+    npt.assert_allclose(prof.easting, coordinates_true[0][0, :])
+    npt.assert_allclose(prof.northing, coordinates_true[1][-1, :])
+    # Distance should still be in the projected coordinates. If the projection
+    # is from geographic, we shouldn't be returning distances in degrees but in
+    # projected meters. The distances will be evenly spaced in unprojected
+    # coordinates.
+    distance_true = np.linspace(region[0] * 2, region[1] * 2, shape[1])
+    npt.assert_allclose(prof.distance, distance_true)
+
+
 def test_check_fit_input():
     "Make sure no exceptions are raised for standard cases"
     size = 20

environment.yml
pip install -e .
parse_log_pytest
environment.yml
pytest
3.7
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
alabaster @ file:///home/conda/feedstock_root/build_artifacts/alabaster_1673645646525/work
astroid==2.3.3
Babel @ file:///home/conda/feedstock_root/build_artifacts/babel_1702422572539/work
black @ file:///home/conda/feedstock_root/build_artifacts/black-recipe_1666773063432/work
bokeh @ file:///home/conda/feedstock_root/build_artifacts/bokeh_1660586590972/work
Bottleneck @ file:///home/conda/feedstock_root/build_artifacts/bottleneck_1649629660965/work
Brotli @ file:///home/conda/feedstock_root/build_artifacts/brotli-split_1648883617327/work
Cartopy @ file:///home/conda/feedstock_root/build_artifacts/cartopy_1631908358075/work
certifi @ file:///home/conda/feedstock_root/build_artifacts/certifi_1725278078093/work/certifi
charset-normalizer @ file:///home/conda/feedstock_root/build_artifacts/charset-normalizer_1728479282467/work
click @ file:///home/conda/feedstock_root/build_artifacts/click_1651215140632/work
cloudpickle @ file:///home/conda/feedstock_root/build_artifacts/cloudpickle_1674202310934/work
colorama @ file:///home/conda/feedstock_root/build_artifacts/colorama_1666700638685/work
coverage @ file:///home/conda/feedstock_root/build_artifacts/coverage_1652409068862/work
cycler @ file:///home/conda/feedstock_root/build_artifacts/cycler_1635519461629/work
cytoolz==0.11.2
dask==2021.10.0
distributed @ file:///tmp/build/80754af9/distributed_1635968201545/work
docutils @ file:///home/conda/feedstock_root/build_artifacts/docutils_1610127754852/work
exceptiongroup @ file:///home/conda/feedstock_root/build_artifacts/exceptiongroup_1720869315914/work
flake8 @ file:///home/conda/feedstock_root/build_artifacts/flake8_1646781084538/work
fonttools @ file:///home/conda/feedstock_root/build_artifacts/fonttools_1651017735934/work
fsspec @ file:///home/conda/feedstock_root/build_artifacts/fsspec_1674184942191/work
HeapDict @ file:///home/conda/feedstock_root/build_artifacts/heapdict_1722613793866/work
idna @ file:///home/conda/feedstock_root/build_artifacts/idna_1726459485162/work
imagesize @ file:///home/conda/feedstock_root/build_artifacts/imagesize_1656939531508/work
importlib-metadata @ file:///home/conda/feedstock_root/build_artifacts/importlib-metadata_1653252814274/work
importlib-resources @ file:///home/conda/feedstock_root/build_artifacts/importlib_resources_1688813467203/work
iniconfig @ file:///home/conda/feedstock_root/build_artifacts/iniconfig_1673103042956/work
isort==4.3.21
Jinja2 @ file:///home/conda/feedstock_root/build_artifacts/jinja2_1715127149914/work
joblib @ file:///home/conda/feedstock_root/build_artifacts/joblib_1691577114857/work
kiwisolver @ file:///home/conda/feedstock_root/build_artifacts/kiwisolver_1648854392523/work
lazy-object-proxy==1.4.3
llvmlite==0.38.0
locket @ file:///home/conda/feedstock_root/build_artifacts/locket_1650660393415/work
MarkupSafe @ file:///home/conda/feedstock_root/build_artifacts/markupsafe_1648737551960/work
matplotlib @ file:///croot/matplotlib-suite_1667356714455/work
mccabe==0.6.1
msgpack @ file:///home/conda/feedstock_root/build_artifacts/msgpack-python_1648745991116/work
munkres==1.1.4
mypy-extensions @ file:///home/conda/feedstock_root/build_artifacts/mypy_extensions_1675543315189/work
numba @ file:///home/conda/feedstock_root/build_artifacts/numba_1652226558760/work
numexpr @ file:///home/conda/feedstock_root/build_artifacts/numexpr_1649636747170/work
numpy @ file:///home/conda/feedstock_root/build_artifacts/numpy_1649806299270/work
numpydoc @ file:///home/conda/feedstock_root/build_artifacts/numpydoc_1665273484262/work
olefile @ file:///home/conda/feedstock_root/build_artifacts/olefile_1701735466804/work
packaging @ file:///home/conda/feedstock_root/build_artifacts/packaging_1696202382185/work
pandas==1.3.5
partd @ file:///home/conda/feedstock_root/build_artifacts/partd_1695667515973/work
pathspec @ file:///home/conda/feedstock_root/build_artifacts/pathspec_1702249949303/work
Pillow @ file:///home/conda/feedstock_root/build_artifacts/pillow_1630696604087/work
platformdirs @ file:///home/conda/feedstock_root/build_artifacts/platformdirs_1699715570510/work
pluggy @ file:///home/conda/feedstock_root/build_artifacts/pluggy_1648772594554/work
pooch @ file:///home/conda/feedstock_root/build_artifacts/pooch_1717777836653/work
psutil @ file:///home/conda/feedstock_root/build_artifacts/psutil_1653089169272/work
pycodestyle @ file:///home/conda/feedstock_root/build_artifacts/pycodestyle_1633982426610/work
pyflakes @ file:///home/conda/feedstock_root/build_artifacts/pyflakes_1633634815271/work
Pygments @ file:///home/conda/feedstock_root/build_artifacts/pygments_1700607939962/work
pykdtree @ file:///home/conda/feedstock_root/build_artifacts/pykdtree_1649628951885/work
pylint==2.4.4
pyparsing @ file:///home/conda/feedstock_root/build_artifacts/pyparsing_1724616129934/work
pyproj @ file:///home/conda/feedstock_root/build_artifacts/pyproj_1650061576675/work
PyQt5==5.15.4
PyQt5-sip==12.9.0
pyshp @ file:///home/conda/feedstock_root/build_artifacts/pyshp_1659002966020/work
PySocks @ file:///home/conda/feedstock_root/build_artifacts/pysocks_1648857264451/work
pytest @ file:///home/conda/feedstock_root/build_artifacts/pytest_1704035161844/work
pytest-cov @ file:///home/conda/feedstock_root/build_artifacts/pytest-cov_1684964868191/work
pytest-mpl @ file:///home/conda/feedstock_root/build_artifacts/pytest-mpl_1708026142435/work
python-dateutil @ file:///home/conda/feedstock_root/build_artifacts/python-dateutil_1709299778482/work
pytz @ file:///home/conda/feedstock_root/build_artifacts/pytz_1726055524169/work
PyYAML @ file:///home/conda/feedstock_root/build_artifacts/pyyaml_1648757092905/work
requests @ file:///home/conda/feedstock_root/build_artifacts/requests_1716354486713/work
scikit-learn @ file:///home/conda/feedstock_root/build_artifacts/scikit-learn_1640464152916/work
scipy @ file:///home/conda/feedstock_root/build_artifacts/scipy_1637806658031/work
Shapely @ file:///home/conda/feedstock_root/build_artifacts/shapely_1635194349843/work
sip @ file:///home/conda/feedstock_root/build_artifacts/sip_1646101199960/work
six @ file:///home/conda/feedstock_root/build_artifacts/six_1620240208055/work
snowballstemmer @ file:///home/conda/feedstock_root/build_artifacts/snowballstemmer_1637143057757/work
sortedcontainers @ file:///home/conda/feedstock_root/build_artifacts/sortedcontainers_1621217038088/work
Sphinx==2.2.1
sphinx-gallery @ file:///home/conda/feedstock_root/build_artifacts/sphinx-gallery_1700542355088/work
sphinx-rtd-theme==0.4.3
sphinxcontrib-applehelp @ file:///home/conda/feedstock_root/build_artifacts/sphinxcontrib-applehelp_1674487779667/work
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp @ file:///home/conda/feedstock_root/build_artifacts/sphinxcontrib-htmlhelp_1675256494457/work
sphinxcontrib-jsmath @ file:///home/conda/feedstock_root/build_artifacts/sphinxcontrib-jsmath_1691604704163/work
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml @ file:///home/conda/feedstock_root/build_artifacts/sphinxcontrib-serializinghtml_1649380998999/work
tblib @ file:///home/conda/feedstock_root/build_artifacts/tblib_1702066284995/work
threadpoolctl @ file:///home/conda/feedstock_root/build_artifacts/threadpoolctl_1643647933166/work
toml @ file:///home/conda/feedstock_root/build_artifacts/toml_1604308577558/work
tomli @ file:///home/conda/feedstock_root/build_artifacts/tomli_1727974628237/work
toolz @ file:///home/conda/feedstock_root/build_artifacts/toolz_1706112571092/work
tornado @ file:///home/conda/feedstock_root/build_artifacts/tornado_1648827244717/work
typed-ast @ file:///home/conda/feedstock_root/build_artifacts/typed-ast_1650218777101/work
typing_extensions @ file:///home/conda/feedstock_root/build_artifacts/typing_extensions_1688315532570/work
unicodedata2 @ file:///home/conda/feedstock_root/build_artifacts/unicodedata2_1649111917568/work
urllib3 @ file:///home/conda/feedstock_root/build_artifacts/urllib3_1708239446578/work
-e git+https://github.com/fatiando/verde.git@491608ea3b4a4783cc47b79f8544facad3b6c0de#egg=verde
wrapt @ file:///home/conda/feedstock_root/build_artifacts/wrapt_1602463279950/work
xarray @ file:///home/conda/feedstock_root/build_artifacts/xarray_1639125986756/work
zict @ file:///home/conda/feedstock_root/build_artifacts/zict_1651156074437/work
zipp @ file:///home/conda/feedstock_root/build_artifacts/zipp_1677313463193/work

name: verde
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - alabaster=0.7.13=pyhd8ed1ab_0
  - astroid=2.3.3=py37hc8dfbb8_3
  - babel=2.14.0=pyhd8ed1ab_0
  - black=22.10.0=py37h89c1867_1
  - bokeh=2.4.3=pyhd8ed1ab_3
  - bottleneck=1.3.4=py37hda87dfa_1
  - brotli=1.0.9=h166bdaf_7
  - brotli-bin=1.0.9=h166bdaf_7
  - brotli-python=1.0.9=py37hd23a5d3_7
  - bzip2=1.0.8=h7f98852_4
  - c-ares=1.18.1=h7f98852_0
  - ca-certificates=2025.2.25=h06a4308_0
  - cartopy=0.20.0=py37hbe109c4_0
  - certifi=2024.8.30=pyhd8ed1ab_0
  - charset-normalizer=3.4.0=pyhd8ed1ab_0
  - click=8.1.3=py37h89c1867_0
  - cloudpickle=2.2.1=pyhd8ed1ab_0
  - colorama=0.4.6=pyhd8ed1ab_0
  - coverage=6.3.3=py37h540881e_0
  - cycler=0.11.0=pyhd8ed1ab_0
  - cytoolz=0.11.2=py37h540881e_2
  - dask=2021.10.0=pyhd8ed1ab_0
  - dask-core=2021.10.0=pyhd3eb1b0_0
  - dbus=1.13.18=hb2f20db_0
  - distributed=2021.10.0=py37h06a4308_0
  - docutils=0.16=py37h89c1867_3
  - exceptiongroup=1.2.2=pyhd8ed1ab_0
  - expat=2.4.8=h27087fc_0
  - flake8=4.0.1=pyhd8ed1ab_2
  - fontconfig=2.14.0=h8e229c2_0
  - fonttools=4.33.3=py37h540881e_0
  - freetype=2.12.1=h4a9f257_0
  - fsspec=2023.1.0=pyhd8ed1ab_0
  - geos=3.9.1=h9c3ff4c_2
  - glib=2.78.4=h6a678d5_0
  - glib-tools=2.78.4=h6a678d5_0
  - gst-plugins-base=1.14.1=h6a678d5_1
  - gstreamer=1.14.1=h5eee18b_1
  - heapdict=1.0.1=pyhd8ed1ab_1
  - icu=58.2=hf484d3e_1000
  - idna=3.10=pyhd8ed1ab_0
  - imagesize=1.4.1=pyhd8ed1ab_0
  - importlib-metadata=4.11.4=py37h89c1867_0
  - importlib_metadata=4.11.4=hd8ed1ab_0
  - importlib_resources=6.0.0=pyhd8ed1ab_0
  - iniconfig=2.0.0=pyhd8ed1ab_0
  - isort=4.3.21=py37hc8dfbb8_1
  - jbig=2.1=h7f98852_2003
  - jinja2=3.1.4=pyhd8ed1ab_0
  - joblib=1.3.2=pyhd8ed1ab_0
  - jpeg=9e=h166bdaf_1
  - keyutils=1.6.1=h166bdaf_0
  - kiwisolver=1.4.2=py37h7cecad7_1
  - krb5=1.19.3=h3790be6_0
  - lazy-object-proxy=1.4.3=py37h8f50634_2
  - lcms2=2.12=hddcbb42_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - lerc=2.2.1=h9c3ff4c_0
  - libblas=3.9.0=16_linux64_openblas
  - libbrotlicommon=1.0.9=h166bdaf_7
  - libbrotlidec=1.0.9=h166bdaf_7
  - libbrotlienc=1.0.9=h166bdaf_7
  - libcblas=3.9.0=16_linux64_openblas
  - libclang=10.0.1=default_hde54327_1
  - libcurl=7.79.1=h2574ce0_1
  - libdeflate=1.7=h7f98852_5
  - libedit=3.1.20191231=he28a2e2_2
  - libev=4.33=h516909a_1
  - libevent=2.1.12=h8f2d780_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgfortran-ng=13.2.0=h69a702a_0
  - libgfortran5=13.2.0=ha4646dd_0
  - libglib=2.78.4=hdc74915_0
  - libgomp=11.2.0=h1234567_1
  - libiconv=1.17=h166bdaf_0
  - liblapack=3.9.0=16_linux64_openblas
  - libllvm10=10.0.1=he513fc3_3
  - libllvm11=11.1.0=hf817b99_2
  - libnghttp2=1.43.0=h812cca2_1
  - libopenblas=0.3.21=h043d6bf_0
  - libpng=1.6.37=h21135ba_2
  - libpq=12.9=h16c4e8d_3
  - libssh2=1.10.0=ha56f1ee_2
  - libstdcxx-ng=11.2.0=h1234567_1
  - libtiff=4.3.0=hf544144_1
  - libuuid=2.32.1=h7f98852_1000
  - libwebp-base=1.2.2=h7f98852_1
  - libxcb=1.15=h7f8727e_0
  - libxkbcommon=1.0.3=he3ba5ed_0
  - libxml2=2.9.14=h74e7548_0
  - llvmlite=0.38.0=py37h4ff587b_0
  - locket=1.0.0=pyhd8ed1ab_0
  - lz4-c=1.9.4=h6a678d5_1
  - markupsafe=2.1.1=py37h540881e_1
  - matplotlib=3.5.3=py37h89c1867_2
  - matplotlib-base=3.5.3=py37hf590b9c_0
  - mccabe=0.6.1=py_1
  - msgpack-python=1.0.3=py37h7cecad7_1
  - munkres=1.1.4=pyh9f0ad1d_0
  - mypy_extensions=1.0.0=pyha770c72_0
  - ncurses=6.4=h6a678d5_0
  - nomkl=1.0=h5ca1d4c_0
  - nspr=4.35=h6a678d5_0
  - nss=3.89.1=h6a678d5_0
  - numba=0.55.1=py37h43839f2_1
  - numexpr=2.8.0=py37h85a3170_102
  - numpy=1.21.6=py37h976b520_0
  - numpydoc=1.5.0=pyhd8ed1ab_0
  - olefile=0.47=pyhd8ed1ab_0
  - openjpeg=2.4.0=hb52868f_1
  - openssl=1.1.1w=h7f8727e_0
  - packaging=23.2=pyhd8ed1ab_0
  - pandas=1.3.5=py37h8c16a72_0
  - partd=1.4.1=pyhd8ed1ab_0
  - pathspec=0.12.1=pyhd8ed1ab_0
  - pcre2=10.42=hebb0a14_1
  - pillow=8.3.2=py37h0f21c89_0
  - pip=24.0=pyhd8ed1ab_0
  - platformdirs=4.0.0=pyhd8ed1ab_0
  - pluggy=1.0.0=py37h89c1867_3
  - pooch=1.8.2=pyhd8ed1ab_0
  - proj=8.0.1=h277dcde_0
  - psutil=5.9.1=py37h540881e_0
  - pycodestyle=2.8.0=pyhd8ed1ab_0
  - pyflakes=2.4.0=pyhd8ed1ab_0
  - pygments=2.17.2=pyhd8ed1ab_0
  - pykdtree=1.3.4=py37hda87dfa_3
  - pylint=2.4.4=py37_0
  - pyparsing=3.1.4=pyhd8ed1ab_0
  - pyproj=3.2.1=py37hcc46e62_6
  - pyqt=5.15.4=py37hd23a5d3_0
  - pyqt5-sip=12.9.0=py37hd23a5d3_0
  - pyshp=2.3.1=pyhd8ed1ab_0
  - pysocks=1.7.1=py37h89c1867_5
  - pytest=7.4.4=pyhd8ed1ab_0
  - pytest-cov=4.1.0=pyhd8ed1ab_0
  - pytest-mpl=0.17.0=pyhd8ed1ab_0
  - python=3.7.16=h7a1cb2a_0
  - python-dateutil=2.9.0=pyhd8ed1ab_0
  - python_abi=3.7=2_cp37m
  - pytz=2024.2=pyhd8ed1ab_0
  - pyyaml=6.0=py37h540881e_4
  - qt-main=5.15.2=h327a75a_7
  - readline=8.2=h5eee18b_0
  - requests=2.32.2=pyhd8ed1ab_0
  - scikit-learn=1.0.2=py37hf9e9bfc_0
  - scipy=1.7.3=py37hf2a6cf1_0
  - setuptools=65.6.3=py37h06a4308_0
  - shapely=1.8.0=py37h48c49eb_0
  - sip=6.5.1=py37hcd2ae1e_2
  - six=1.16.0=pyh6c4a22f_0
  - snowballstemmer=2.2.0=pyhd8ed1ab_0
  - sortedcontainers=2.4.0=pyhd8ed1ab_0
  - sphinx=2.2.1=py_0
  - sphinx-gallery=0.15.0=pyhd8ed1ab_0
  - sphinx_rtd_theme=0.4.3=py_0
  - sphinxcontrib-applehelp=1.0.4=pyhd8ed1ab_0
  - sphinxcontrib-devhelp=1.0.2=py_0
  - sphinxcontrib-htmlhelp=2.0.1=pyhd8ed1ab_0
  - sphinxcontrib-jsmath=1.0.1=pyhd8ed1ab_0
  - sphinxcontrib-qthelp=1.0.3=py_0
  - sphinxcontrib-serializinghtml=1.1.5=pyhd8ed1ab_2
  - sqlite=3.45.3=h5eee18b_0
  - tblib=3.0.0=pyhd8ed1ab_0
  - threadpoolctl=3.1.0=pyh8a188c0_0
  - tk=8.6.14=h39e8969_0
  - toml=0.10.2=pyhd8ed1ab_0
  - tomli=2.0.2=pyhd8ed1ab_0
  - toolz=0.12.1=pyhd8ed1ab_0
  - tornado=6.1=py37h540881e_3
  - typed-ast=1.5.3=py37h540881e_0
  - typing-extensions=4.7.1=hd8ed1ab_0
  - typing_extensions=4.7.1=pyha770c72_0
  - unicodedata2=14.0.0=py37h540881e_1
  - urllib3=2.2.1=pyhd8ed1ab_0
  - wheel=0.38.4=py37h06a4308_0
  - wrapt=1.11.2=py37h8f50634_1
  - xarray=0.20.2=pyhd8ed1ab_0
  - xz=5.6.4=h5eee18b_1
  - yaml=0.2.5=h7f98852_2
  - zict=2.2.0=pyhd8ed1ab_0
  - zipp=3.15.0=pyhd8ed1ab_0
  - zlib=1.2.13=h5eee18b_1
  - zstd=1.5.6=hc292b87_0
prefix: /opt/conda/envs/verde

verde/tests/test_base.py::test_basegridder_projection_multiple_coordinates
verde/tests/test_base.py::test_check_coordinates verde/tests/test_base.py::test_get_dims verde/tests/test_base.py::test_get_data_names verde/tests/test_base.py::test_get_data_names_fails verde/tests/test_base.py::test_get_instance_region verde/tests/test_base.py::test_basegridder verde/tests/test_base.py::test_basegridder_projection verde/tests/test_base.py::test_check_fit_input verde/tests/test_base.py::test_check_fit_input_fails_coordinates verde/tests/test_base.py::test_check_fit_input_fails_weights verde/tests/test_base.py::test_least_squares_copy_jacobian
verde/base/base_classes.py
verde/base/base_classes.py