I am still very green to Python although I do have some programming experience (mainly MATLAB and a C class I took about 9 years ago, :P!!). For example, I've seen a few ways how to load these libraries:

```
import numpy
import pylab
```

or

`from pylab import *`

From here I found this nice quote: http://old.nabble.com/pylab-td24910613.html

Here is a decent (decent as in I still don't understand fully) explanation of the different import/package/library options:Numpyis the common core, providing N-dimensional arrays and math;matplotlibis a plotting library, using numpy;scipyis a collection of math/science functionality, also using numpy.

http://johnstachurski.net/lectures/more_numpy.html

A quick aside on the relationship between Pylab and Matplotlib

One way to do plots with Matplotlib is like this

```
import pylab
pylab.plot([1, 2, 3])
pylab.show()
```

The same can be achieved by

```
import matplotlib.pyplot as plt
plt.plot([1, 2, 3])
plt.show()
```

What is the difference?

We can see the difference in the pylab initialization file:

```
## some stuff
from numpy import *
from numpy.fft import *
from numpy.random import *
from numpy.linalg import *
## some more stuff
from matplotlib.pyplot import *
## some more stuff
```

Thus,

`import pylab`

brings in- everything from the NumPy namespace
- everything from various NumPy submodules (
`random`

,`linalg`

, etc.) - everything from
`matplotlib.pyplot`

The plotting functions are in

`matplotlib.pyplot`

Another explanation I found: http://code.activestate.com/lists/python-tutor/87392/

what is the basic difference between the commands

import pylab as *

import matplotlib.pyplot as plt

import numpy as np import numpy as *One response: http://code.activestate.com/lists/python-tutor/87394/

import pylab as * pollutes your global namespace with all kinds of symbols. If you don't know them all, you might accidentally use one of them in your own code, and wonder why things aren't working the way you expected. Better is import pylab and then use pylab.something to access a symbol from pylab Some prefer import pylab as pab (or something) and then use pab.something to save some typing. import matplotlib.pyplot as plt looks in the matplotlib *package" for the module pyplot, then imports it with a shortcut name of pltAnother response: http://code.activestate.com/lists/python-tutor/87400/

> what is the basic difference between the commands > import pylab as * Are you sure you don't mean from pylab import * ??? The other form won't work because * is not a valid name in Python. You should ghet a syntax error. > import matplotlib.pyplot as plt This is just an abbreviation to save typing matplotlib.pyplot in front of every reference to the module names. > import numpy as np as above > import numpy as * again an error.

Anyways, I would recommend reading on the structure of python here http://docs.python.org/contents.html which is what I plan on doing.

On to the plot.

The code:

from pylab import * r=arange(0,1,0.01) z=arange(0,1,0.01) sigma=1 l=1 kappa=1/(2*pi*sigma*l) u=-(kappa/r)*sin(pi*pow(r, 2)) plot(r,u) ylabel('$ u_r $') xlabel('$ r $') title('$ u_r $') show()

The figure:

Screenshot of Spyder IDE:

## No comments:

## Post a Comment