I try to understand some packaging Technics you are using in your project.
To work with
pyplot, which is part of your package, I have to import it explicite. This does not work.
matplotlib.pyplot # Exception
I have to import it explicte
matplotlib.pyplot # OK
This is totally OK for me. No problem with that.
I was looking into
matplotlib/src to find out how did you “separate” this two components. But I do not understand.
There is no
__init__.py file in your
src and that is why I don’t understand how an import could work. In my understanding even
import matplotlib should throw an exception because there is not
I am by no means an expert, but when I look at the matplotlib library that’s installed on the machine I’m using at the moment (a MacBook Pro 2020), the matplotlib installation does have an
__init()__ file (quite an extensive one, actually). For reference, I’m using
Python 3.10.2 and
With respect to pyplot, it is a separate library (not a class or method from a file called
matplotlib.py) and that affects how you import it in order to use its features. In fact, there is no python file called
matplotlib.py so when you
import matplotlib you are importing the entire package. It may be helpful to take a look at how to work with python modules, which does a much better job of explaining it than I could ever do.
src is where the C++ code lives. The python code (and subpackges) live under lib
pyplot is a module under the
matplotlib module, but it is not imported in the matplotlib
__init__ which is why you can’t do