On Tue, 10 Nov 2009 13:13 -0500, "George Bonev"
<george...@gmail.com> wrote:

  Hello,
  I am plotting a fig in Basemap, but I don't need the extra
  while space on the sides of the figure when I use savfig(). I
  tried axes([0,0,1,1]) but that just gave me a blank white
  screen with some ticks on the sides. Is there another way to
  do it with Basemap? Please help!
  Thank you,
  George B.


George:  If you want to preserve the aspect ratio of the map, you
need to calculate it ahead of time and make sure that you create
a figure with the same aspect ratio and define an axes with no
white space.  For example, for a global cylindrical equidistant
projection, the aspect ration should be 2:1, so you would create
a figure like this

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure(figsize=(10,5))
ax = plt.axes([0,0,1,1])
m = Basemap(projection='cyl',lon_0=180)
m.drawcoastlines()
m.fillcontinents()
m.drawparallels(np.arange(-60,61,30))
m.drawmeridians(np.arange(60,301,60))
plt.savefig('nowhite.png')
plt.show()

Note that you need to create the axes instance before the Basemap
instance.

If you don't care about the aspect ratio of the map being
correct, you can set fix_aspect='False', create a map of any size
you like, and use an axes with no white space. For example,

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure(figsize=(8,8))
ax = plt.axes([0,0,1,1])
m = Basemap(projection='cyl',lon_0=180,fix_aspect=False)
m.drawcoastlines()
m.fillcontinents()
m.drawparallels(np.arange(-60,61,30))
m.drawmeridians(np.arange(60,301,60))
plt.savefig('nowhite2.png')
plt.show()

If you don't set fix_aspect=False in this example, you'll get a
map with a 2:1 aspect ratio and lots of white space on the top
and bottom of the plot.

-Jeff
------
Jeffrey S. Whitaker
Phone: (303)497-6313
FAX: (303)497-6449
NOAA/OAR/CDC  R/CDC1         
325 Broadway, Boulder, CO, USA 80305-3328                             
http://www.cdc.noaa.gov/people/jeffrey.s.whitaker

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to