Python DevCenter
oreilly.comSafari Books Online.Conferences.


Adding Data Visualization to Python for Producing Graphs
Pages: 1, 2, 3, 4

As an example of generating a 3D plot, try the following commands.

>>>z_mat = zeros((180,180),Float)
>>>x_ray = arange(180.0)
>>>y_ray = arange(180.0)

>>>dtr = 3.141592654/180.0

>>>for x in x_ray:
	for y in y_ray:
		z_mat[int(x)][int(y)] = sin(x*3*dtr)*sin(y*2*dtr)

The first command creates the result matrix, properly sized beforehand. We use the zeros() function to size-up the array and pre-allocate storage space for it. The second argument in zeros() declares the zeros in the matrix to be floating point zeros instead of integer ones (which would be created by default). If we left that out, the upcoming calculation would be truncated and stored in the z_mat matrix as integer values -- not what we want!

The surface() function is the Quickplot routine that generates the following graph.

Surface function in the Quickplot

While this may look exciting, the monochromatic nature is drab. By switching the surface() function to the surshade() function the following is produced.

Results of using surshade function.

Now that's a little better! With color the features of the plot really stand out. As a final example of QuickPlots, switch the surshade() function to surf3(), which will draw a colored contour plot of the same data. The color bar on the left shows the magnitudes as represented by the colors in the plot.

Using surf3 to draw a color contour plot

Quickplot Modification

You can add custom labels to the axis and change quite a few characteristics of a QuickPlot. This is done by setting variables internal to the plotting package via the setvar() routine. Consult the DISLIN Python manual for a complete list of available options. Recreating the first example with the addition of axis labels is shown below.

>>> x=arange(100.0)
>>> setvar('X','Independent Variable')
>>> setvar('Y','Dependent Variable')
>>> plot(x,sin(x/3)+cos(x/5))
>>> disfin()

Addition of axis labels

Pages: 1, 2, 3, 4

Next Pagearrow

Sponsored by: