Heh. Das liegt daran, ist keine AxesSubplot
Klasse .. bis man benötigt wird, wenn man von SubplotBase
gebaut wird. Dies wird durch eine Magie in axes.py
getan:
def subplot_class_factory(axes_class=None):
# This makes a new class that inherits from SubplotBase and the
# given axes_class (which is assumed to be a subclass of Axes).
# This is perhaps a little bit roundabout to make a new class on
# the fly like this, but it means that a new Subplot class does
# not have to be created for every type of Axes.
if axes_class is None:
axes_class = Axes
new_class = _subplot_classes.get(axes_class)
if new_class is None:
new_class = new.classobj("%sSubplot" % (axes_class.__name__),
(SubplotBase, axes_class),
{'_axes_class': axes_class})
_subplot_classes[axes_class] = new_class
return new_class
So ist es im laufenden Betrieb gemacht hat, aber es ist eine Unterklasse von SubplotBase
:
>>> import matplotlib.pyplot as plt
>>> fig = plt.figure()
>>> ax = fig.add_subplot(111)
>>> print type(ax)
<class 'matplotlib.axes.AxesSubplot'>
>>> b = type(ax)
>>> import matplotlib.axes
>>> issubclass(b, matplotlib.axes.SubplotBase)
True
Gibt es ein tatsächliches Problem Sie versuchen, mit diesem zu lösen, oder ist diese Frage nur Neugier? – Julian
@Julian: Es ist "nur Neugier". Ich glaube, dass Neugier ein besserer Entwickler ist. – user763305