Regards,

Jon

On Thu, Dec 11, 2014 at 2:30 PM, Benjamin Root <ben.root@…1304… > <mailto:ben.root@…1304…>> wrote:

If you have matplotlib v1.3 (maybe 1.2, I can't remember), you can

pass a list of axes to the "ax" argument of colorbar, and it should

steal space equally from all the specified axes.

I am also particularly fond of using the mpl_toolkit axis_grid1,

which provides you a nice way to preallocate space for colorbars in

different ways:

http://matplotlib.org/mpl_toolkits/axes_grid/users/overview.html?highlight=axes_grid1#axes-grid1

I hope that helps!

Ben Root

On Thu, Dec 11, 2014 at 1:49 PM, Slavin, Jonathan > <jslavin@…1081… <mailto:jslavin@…1081…>> wrote:

Hi,

I'm trying to make a plot with four panes (2x2). The two on top

are images, created with pcolormesh, while the ones on the

bottom are line plots. I'd like to the axes to line up -- which

they do -- but when I add a colorbar to the top right, it steals

space from the image plot. I only need one colorbar since the

two images are forced to have the same scaling. Can anyone tell

me how to insert the colorbar on the top right without it taking

space from the top right image -- or force the space to be taken

from the horizontal space of all the plots so the shapes are

uniform? I've tried several approaches including using

make_axes_locatable from mpl_toolkits.axes_grid1 with no

success. I must admit that I don't really understand what

make_axes_locatable does, so it may be entirely the wrong thing

to use. On the other hand, not using it, i.e. just using

plt.colorbar or fig.colorbar seems to do essentially the same

thing, steal space from the axes. The basics of the plot are

like this:

x = np.arange(20.)

xc = (x[:-1] + x[1:])/2.

y = np.arange(15.)

xx,yy = np.meshgrid(x,y)

z1 = np.random.randn(14,19)

z2 = np.random.randn(14,19)

fig,ax = plt.subplots(2,2)

pc = ax[0,0].pcolormesh(x,y,z1)

ax[1,0].plot(xc,z1[0,:])

ax[0,1].pcolormesh(x,y,z2)

ax[1,1].plot(xc,z2[0,:])

cb = plt.colorbar(pc, ax=ax[0,1])

plt.show()

Any help would be appreciated.

Regards,

Jon

–

________________________________________________________

Jonathan D. Slavin Harvard-Smithsonian CfA

jslavin@…1081… <mailto:jslavin@…1081…>

60 Garden Street, MS 83

phone: (617) 496-7981 <tel:%28617%29%20496-7981>

Cambridge, MA 02138-1516

fax: (617) 496-7577 <tel:%28617%29%20496-7577> USA

________________________________________________________

------------------------------------------------------------------------------

Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server

from Actuate! Instantly Supercharge Your Business Reports and

Dashboards

with Interactivity, Sharing, Native Excel Exports, App

Integration & more

Get technology previously reserved for billion-dollar

corporations, FREE

http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk

_______________________________________________

Matplotlib-users mailing list

Matplotlib-users@lists.sourceforge.net

<mailto:Matplotlib-users@lists.sourceforge.net>

https://lists.sourceforge.net/lists/listinfo/matplotlib-users

–

________________________________________________________

Jonathan D. Slavin Harvard-Smithsonian CfA

jslavin@…1081… <mailto:jslavin@…1081…> 60 Garden

Street, MS 83

phone: (617) 496-7981 Cambridge, MA 02138-1516

fax: (617) 496-7577 USA

________________________________________________________

------------------------------------------------------------------------------

Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server

from Actuate! Instantly Supercharge Your Business Reports and Dashboards

with Interactivity, Sharing, Native Excel Exports, App Integration & more

Get technology previously reserved for billion-dollar corporations, FREE

http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk

_______________________________________________

Matplotlib-users mailing list

Matplotlib-users@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-users