Skip to content

Commit

Permalink
Merge 1e8500f into bb9590e
Browse files Browse the repository at this point in the history
  • Loading branch information
philippjfr committed Mar 22, 2020
2 parents bb9590e + 1e8500f commit 24b57a6
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 10 deletions.
19 changes: 12 additions & 7 deletions holoviews/core/data/__init__.py
Expand Up @@ -25,16 +25,15 @@
from .grid import GridInterface
from .multipath import MultiInterface # noqa (API import)
from .image import ImageInterface # noqa (API import)
from .spatialpandas import SpatialPandasInterface # noqa (API import)

default_datatype = 'dictionary'
datatypes = ['dictionary', 'grid', 'spatialpandas']
datatypes = ['dictionary', 'grid']

try:
import pandas as pd # noqa (Availability import)
from .pandas import PandasInterface
default_datatype = 'dataframe'
datatypes = ['dataframe', 'dictionary', 'spatialpandas', 'grid']
datatypes.insert(0, 'dataframe')
DFColumns = PandasInterface
except ImportError:
pd = None
Expand All @@ -44,14 +43,14 @@
'following error: %s' % e)

try:
from .xarray import XArrayInterface # noqa (Conditional API import)
datatypes.append('xarray')
from .spatialpandas import SpatialPandasInterface # noqa (API import)
datatypes.append('spatialpandas')
except ImportError:
pass

try:
from .dask import DaskInterface # noqa (Conditional API import)
datatypes.append('dask')
from .xarray import XArrayInterface # noqa (Conditional API import)
datatypes.append('xarray')
except ImportError:
pass

Expand All @@ -61,6 +60,12 @@
except ImportError:
pass

try:
from .dask import DaskInterface # noqa (Conditional API import)
datatypes.append('dask')
except ImportError:
pass

if 'array' not in datatypes:
datatypes.append('array')
if 'multitabular' not in datatypes:
Expand Down
6 changes: 5 additions & 1 deletion holoviews/core/data/spatialpandas.py
Expand Up @@ -31,7 +31,11 @@ def applies(cls, obj):
if not cls.loaded():
return False
from spatialpandas import GeoDataFrame, GeoSeries
return isinstance(obj, (GeoDataFrame, GeoSeries))
is_sdf = isinstance(obj, (GeoDataFrame, GeoSeries))
if 'geopandas' in sys.modules and not 'geoviews' in sys.modules:
import geopandas as gpd
is_sdf |= isinstance(obj, (gpd.GeoDataFrame, gpd.GeoSeries))
return is_sdf

@classmethod
def geo_column(cls, data):
Expand Down
5 changes: 3 additions & 2 deletions setup.py
Expand Up @@ -10,7 +10,8 @@
import pyct.build

setup_args = {}
install_requires = ['param>=1.8.0,<2.0', 'numpy>=1.0', 'pyviz_comms>=0.7.2', 'panel>=0.7.0']
install_requires = ['param>=1.8.0,<2.0', 'numpy>=1.0', 'pyviz_comms>=0.7.2',
'panel>=0.7.0', 'pandas']

extras_require = {}

Expand All @@ -19,7 +20,7 @@

# IPython Notebook + pandas + matplotlib + bokeh
extras_require['recommended'] = extras_require['notebook'] + [
'pandas', 'matplotlib>=2.2', 'bokeh>=1.1.0']
'matplotlib>=2.2', 'bokeh>=1.1.0']

# Requirements to run all examples
extras_require['examples'] = extras_require['recommended'] + [
Expand Down

0 comments on commit 24b57a6

Please sign in to comment.