Hi guys,<br><br>I want a 2x2 multiplot showing 4 different things (density, temperature, HII fraction and radiation force). How do i get 4 different colorbars on a 2x2 image? currently it will only give me two.<br clear="all">
<br>Thanks,<br><br>Libby<br><br>my scripts as it stands:<br><br><br>from yt.mods import * # set up our namespace<br>import matplotlib.colorbar as cb<br>import os<br><br>orient = 'horizontal'<br>frame_template = "aaSN/%s/Multiplotproj_%02ipc_%01i_%04i.eps"<br>
<br>ss = float(sys.argv[2])<br>rho_min = 1.e-25<br>rho_max = 1.e-20<br>temp_min = 1<br>temp_max = 10000<br>HII_min = 1.e-5<br>HII_max = 1.0<br>rp_min = 1e24<br>rp_max = 1e26<br>name = sys.argv[1]<br><br>firststar = 0<br><br>
def _ConvertAccel(data):<br> return data.convert("Length") / (data.convert("Time"))**2.0<br>def _RadiationAccelerationMagnitude(field, data):<br> return ( (data["RadAccel1"])**2.0 + \<br>
(data["RadAccel2"])**2.0 + \<br> (data["RadAccel3"])**2.0 )**(1.0/2.0)<br>add_field("RadiationAccelerationMagnitude", function=_RadiationAccelerationMagnitude, take_log=False,convert_function=_ConvertAccel, units=r"\rm{cm}/\rm{s}^{2}")<br>
def _RadiationForceMagnitude(field, data):<br> return ( data["RadiationAccelerationMagnitude"] * data["Density"] * data["CellVolume"])<br>add_field("RadiationForceMagnitude", function=_RadiationForceMagnitude, take_log=False, units=r"\rm{dynes}")<br>
<br>for n in range(50,100,10):<br> pf = load("SciNet/%s/DD%04i/data%04i" % (name,n, n)) # load data<br> if pf is None: continue<br> for ax in range (0,1):<br> if os.path.exists(frame_template % (name,ss,ax,n)) is True:<br>
print "file exists"<br> continue<br> xc = 0.5<br> yc = 0.5<br> zc = 0.5 <br> print "Dump:", n, "axis:", ax<br><br> fig, axes, colorbars = get_multi_plot( 2, 2, colorbar=orient, bw = 6)<br>
<br> pc = PlotCollection(pf, center=(xc, yc, zc))<br><br> p = pc.add_projection("Density", ax, weight_field="Density", figure = fig, axes = axes[0][0], use_colorbar=False)<br> p.set_cmap("bds_highcontrast")<br>
p.set_zlim(rho_min, rho_max)<br> q = pc.add_projection("Temperature", ax, weight_field="Density", figure=fig, axes=axes[0][1], use_colorbar=False)<br> q.set_cmap("hot")<br>
q.set_zlim(temp_min, temp_max)<br> r = pc.add_projection("HII_Fraction", ax, weight_field="Density", figure=fig, axes=axes[1][0], use_colorbar=False)<br> r.set_cmap("jet")<br>
r.set_zlim(HII_min, HII_max)<br> s = pc.add_projection("RadiationForceMagnitude", ax, weight_field="Density", figure=fig, axes=axes[1][1], use_colorbar=False)<br> s.set_cmap("Greys")<br>
s.set_zlim(rp_min, rp_max)<br> pc.set_width(ss, 'pc')<br> sp = pf.h.all_data()<br> if na.any(pf.h.grid_particle_count):<br> p.modify["particles"](2.0, p_size=1.0, col='k', minimum_mass= 6.e0)<br>
q.modify["particles"](2.0, p_size=1.0, col='k', minimum_mass= 6.e0)<br> r.modify["particles"](2.0, p_size=1.0, col='k', minimum_mass= 6.e0)<br> s.modify["particles"](2.0, p_size=1.0, col='k', minimum_mass= 6.e0) <br>
print " XXXXX Particles present XXXXX"<br> Timemyr = pf["InitialTime"]*pf["years"]/1.e6 - firststar*.1<br> p.modify["text"]((0.051,0.949),"Time = %5.1f Myr" % (Timemyr), text_args = {'color':'k'})<br>
p.modify["text"]((0.05,0.95),"Time = %5.1f Myr" % (Timemyr), text_args = {'color':'w'})<br><br><br> for p, cax in zip(pc.plots, colorbars):<br> p._redraw_image()<br>
cbar = cb.Colorbar(cax, p.image, orientation=orient)<br> p.colorbar = cbar<br> p._autoset_label()<br><br> fig.savefig(frame_template % (name,ss,ax,n), format="eps")<br><br>
<br><br>-- <br>Elizabeth Harper-Clark MA MSci<br>PhD Candidate, Canadian Institute for Theoretical Astrophysics, UofT<br>Sciences and Engineering Coordinator, Teaching Assistants' Training Program, UofT<br><br><a href="http://www.astro.utoronto.ca/%7Eh-clark" target="_blank">www.astro.utoronto.ca/~h-clark</a><br>
<a href="mailto:h-clark@cita.utoronto.ca" target="_blank">h-clark@cita.utoronto.ca</a><br>Astronomy office phone: +1-416-978-5759<br>