--- On Sun, 2/28/10, David Goldsmith <d_l_goldsm...@yahoo.com> wrote:
> > >> > Question 2) is there some way I can add > > pieces of the > > >> array incrementally to > > >> > the image into their proper place, > i.e., > > modify the > > >> following code: > > >> > > > >> > ax.imshow(image[0:ny/2+1, > 0:nx/2+1]) # > > upper > > >> left corner of image > > >> > ax.hold(True) > > >> > ax.imshow(argW[ny/2+1:-1, > 0:nx/2+1]) # > > lower > > >> left corner of image > > >> > ax.imshow(argW[0:ny/2+1, > nx/2+1:-1]) # > > upper > > >> right corner of image > > >> > ax.imshow(argW[ny/2+1:-1, > nx/2+1:-1]) > > # lower > > >> right corner of image > > >> > > >> Try the extents keyword argument. It let's > you > > specify the > > >> corners of > > >> the image in data coordinates. > > >> > > >> Ryan > > > > > > Hi, Ryan, thanks! Can you be a little more > specific > > as to how I should try that? I tried: > > > > > > ax.imshow(argW[0:ny/2+1, 0:nx/2+1], cmap_name, > > extent=(0,nx/2,ny/2,0)) > > > ax.hold(True) > > > ax.imshow(argW[ny/2+1:-1, 0:nx/2+1], cmap_name, > > extent=(0,nx/2,ny,ny/2)) > > > ax.imshow(argW[0:ny/2+1, nx/2+1:-1], cmap_name, > > extent=(nx/2,nx,ny/2,0)) > > > ax.imshow(argW[ny/2+1:-1, nx/2+1:-1], cmap_name, > > extent=(nx/2,nx,ny,ny/2)) > > > > > > which didn't work (I only got one "corner" - the > last > > one, I think - i.e., I think it's still just putting > > subsequent images on top of prior ones). > > > > Based on just a quick look, I'd make sure: > > > > 1) To set the x and y limits appropriately: > > > > ax.set_xlim(0, nx) > > ax.set_ylim(ny, 0) > > I'll try it out and report back. Nope, still only getting the last corner. Let me give a little more of my code: import numpy as N from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas from matplotlib.figure import Figure w, h, DPI = (8.2, 6.2, 50) fig = Figure(figsize=(w, h), dpi=DPI, frameon=False) ax = fig.add_subplot(1,1,1) canvas = FigureCanvas(fig) nx, xmin, xmax = (int(w*DPI), -0.5, 0.5) ny, ymin, ymax = (int(h*DPI), 0.6, 1.2) W = N.zeros((ny,nx),N.complex) ## Generate non-trivial W; unnecessary for code to run, I think argW = N.angle(W) ax.set_xlim(0, nx) ax.set_ylim(ny, 0) ax.imshow(argW[0:ny/2, 0:nx/2], extent=(0, nx/2 - 1, ny/2 - 1, 0)) ax.hold(True) ax.imshow(argW[ny/2:-1, 0:nx/2], extent=(0, nx/2 - 1, ny, ny/2)) ax.imshow(argW[0:ny/2, nx/2:-1], extent=(nx/2, nx, ny/2 - 1, 0)) ax.imshow(argW[ny/2:-1, nx/2:-1], extent=(nx/2, nx, ny, ny/2)) canvas.print_figure(fid, dpi=DPI) DG ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users