File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed
lib/matplotlib/projections Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change 5555from .. import axes , _docstring
5656from .geo import AitoffAxes , HammerAxes , LambertAxes , MollweideAxes
5757from .polar import PolarAxes
58- from mpl_toolkits .mplot3d import Axes3D
58+
59+ try :
60+ from mpl_toolkits .mplot3d import Axes3D
61+ except ImportError :
62+ import warnings
63+ warnings .warn ("Unable to import Axes3D. This may be due to multiple versions of "
64+ "Matplotlib being installed (e.g. as a system package and as a pip "
65+ "package). As a result, the 3D projection is not available." )
66+ Axes3D = None
5967
6068
6169class ProjectionRegistry :
@@ -87,8 +95,12 @@ def get_projection_names(self):
8795 HammerAxes ,
8896 LambertAxes ,
8997 MollweideAxes ,
90- Axes3D ,
9198)
99+ if Axes3D is not None :
100+ projection_registry .register (Axes3D )
101+ else :
102+ # remove from namespace if not importable
103+ del Axes3D
92104
93105
94106def register_projection (cls ):
You can’t perform that action at this time.
0 commit comments