On the apt-get man's page, one can find this:
This option is followed by one or more packages desired for installation. Each package is a package name, not a fully qualified filename (for instance, in a Fedora Core system, glibc would be the argument provided, not glibc-2.4.8.i686.rpm).
All packages required by the package(s) specified for installation will also be retrieved and installed.
Causes apt-get to install/remove packages in an attempt to satisfy the build dependencies for a source package.
It sounds like both of those are trying to satisfy dependencies, but I had different results while installing
matplotlib with each of those:
apt-get intall didn't work with my subsequent
pip install matplotlib in my virtualenv, while
apt-get build-dep did*.
* Yeah, I needed to install
matplotlib in a venv, but pip couldn't resolve some of the dependencies, so I lazily used apt in order to solve it