<div dir="ltr">Hi Latif,<div><br></div><div>I've issued a pull request that should allow a plotting script similar to the one you pasted to work.  The pull request is here: <a href="https://bitbucket.org/yt_analysis/yt/pull-request/556">https://bitbucket.org/yt_analysis/yt/pull-request/556</a></div>

<div><br></div><div>To merge the patch into your local copy, do the following:</div><div><br></div><div>$ cd $YT_HG</div><div>$ hg pull -r 6f91fb2 <a href="https://bitbucket.org/ngoldbaum/yt">https://bitbucket.org/ngoldbaum/yt</a></div>

<div>$ python setup.py build_ext -i</div><div><br></div><div>Take a look at the multipanel plotting script I pasted into the PR description.  I think something like that should work for your use case.</div><div><br></div>

<div>Hope that helps,</div><div><br></div><div>Nathan Goldbaum</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 19, 2013 at 5:02 PM, Nathan Goldbaum <span dir="ltr"><<a href="mailto:nathan12343@gmail.com" target="_blank">nathan12343@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Latif,<div><br></div><div>Unfortunately I don't think Matt's suggestion will work.  What happens for these plots is the matplotlib figure object doesn't persist whenever you make a modification or call _setup_pltos(). Instead, a new matplotlib figure is generated and the old one is discarded.  So what's happening in your script is the annotated plots are drawn on an entirely new figure object rather than the one you've assigned, while the original figure that you set up is left blank, yielding the blank plots you're seeing in the end.</div>


<div><br></div><div>There might be a hacky way around this, but I still think the most natural way to do what you're doing is to add the particles to the plot by hand, following what happens in the original plot modification.</div>


<div><br></div><div>I'd like to make it so manipulations like what you're trying to do and what Matt suggested will work by persisting figures as plots get modified, as this will make it much easier to set up animations and some other cool stuff, but it will require some modifications to yt's plotting infrastructure to ensure that figures are updated rather than just discarded.</div>


<div><br></div><div>Hope that helps, sorry that I don't have a suggestion that will work using Matt's somewhat simpler suggestion.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-Nathan</div>

</font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">
On Fri, Jul 19, 2013 at 4:48 PM, Latif <span dir="ltr"><<a href="mailto:latifne@gmail.com" target="_blank">latifne@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div dir="ltr"><div><div>Hi Matt and Nathan,<br></div>Thank you for your help.  I think Matt's idea is very good and bit easy.  Unfortunately, I didn't get success with it yet.  I am getting empty panels.  Matt, Is it close to what you suggested?  It is most likely that I am messing up some thing due to my poor understanding.  Here is my script. Do you guys know what is going wrong here.<br>



<br><a href="http://paste.yt-project.org/show/3708/" target="_blank">http://paste.yt-project.org/show/3708/</a><br><br></div>Cheers<span><font color="#888888"><br>Latif<br></font></span></div><div>
<div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 19, 2013 at 3:53 PM, Matthew Turk <span dir="ltr"><<a href="mailto:matthewturk@gmail.com" target="_blank">matthewturk@gmail.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Latif,<br>
<div><br>
On Fri, Jul 19, 2013 at 9:48 AM, Latif <<a href="mailto:latifne@gmail.com" target="_blank">latifne@gmail.com</a>> wrote:<br>
> Hi all,<br>
</div><div>> Is there any way to annotate particles to the multi-plot porjections/slices?<br>
> I am using the following recipe from the webpage.<br>
><br>
> <a href="http://yt-project.org/doc/cookbook/multi_plot_slice_and_proj.py" target="_blank">http://yt-project.org/doc/cookbook/multi_plot_slice_and_proj.py</a><br>
><br>
> thanks in advance,<br>
><br>
> Cheers<br>
> Latif<br>
<br>
</div>Unfortunately this is a lot harder, as the FRBs used there do not<br>
expose the same annotate_* methods that the sliceplot, projectionplot,<br>
etc do.<br>
<br>
However, you *may* be able to do something similar, although I have<br>
not tested it, by creating a ProjectionPlot or SlicePlot, then<br>
swapping out the .axes and .figure objects that resides on the plot<br>
object itself.  Then you can call ._setup_plots() on the<br>
ProjectionPlot or SlicePlot, and it should re-create all the necessary<br>
info.<br>
<br>
So it would look something like this, once you have the axes objects<br>
you're interested in from the recipe you linked to:<br>
<br>
p = ProjectionPlot( ... )<br>
p.plots["Density"].figure = fig<br>
p.plots["Density"].axes = dens_axes[0]<br>
p.annotate_whatever()<br>
p._setup_plots()<br>
<br>
Then you can call:<br>
<br>
fig.savefig("%s_3x2" % pf)<br>
<br>
This is all very rough, but I think it should get you there.<br>
<div><div><br>
-Matt<br>
<br>
><br>
><br>
> On Thu, Jul 4, 2013 at 9:43 PM, Latif <<a href="mailto:latifne@gmail.com" target="_blank">latifne@gmail.com</a>> wrote:<br>
>><br>
>> HI Matt,<br>
>> Thank you for a prompt and precise response.<br>
>> Cheers<br>
>> Latif<br>
>><br>
>><br>
>><br>
>> On Thu, Jul 4, 2013 at 7:04 PM, Matthew Turk <<a href="mailto:matthewturk@gmail.com" target="_blank">matthewturk@gmail.com</a>><br>
>> wrote:<br>
>>><br>
>>> Hi Latif,<br>
>>><br>
>>> The callback you're looking for is "particles" and you can specify a<br>
>>> "ptype" argument for specifying the type of particles.  (If you're<br>
>>> using Enzo, this should be the number in the "particle_type" field you<br>
>>> are selecting.)  Note also that annotate_particles accepts a width<br>
>>> argument, in code units, which says how wide the selected region will<br>
>>> be around the center of the slice or the center of the box for<br>
>>> projections.  So if you are using a projection and you want the whole<br>
>>> box, you can do 1.0/pf['unitary'] to get the full domain.<br>
>>><br>
>>> Here is an example:<br>
>>><br>
>>> s = SlicePlot(pf, "x", "Density")<br>
>>> s.annotate_particles(1.0/pf['kpc'], p_size = 1.0, ptype = 1)<br>
>>><br>
>>> which will choose particle_type = =1.<br>
>>><br>
>>> -Matt<br>
>>><br>
>>> On Thu, Jul 4, 2013 at 10:20 AM, Latif <<a href="mailto:latifne@gmail.com" target="_blank">latifne@gmail.com</a>> wrote:<br>
>>> > Hi all,<br>
>>> > I want to overplot star particles on density projections/slices. It is<br>
>>> > probably a very simple question but could not figure out how to do it.<br>
>>> > Can<br>
>>> > I also get information about their position and velocities as well?<br>
>>> > thanks in advance,<br>
>>> > Cheers<br>
>>> > Latif<br>
>>> ><br>
>>> > _______________________________________________<br>
>>> > yt-users mailing list<br>
>>> > <a href="mailto:yt-users@lists.spacepope.org" target="_blank">yt-users@lists.spacepope.org</a><br>
>>> > <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>>> ><br>
>>> _______________________________________________<br>
>>> yt-users mailing list<br>
>>> <a href="mailto:yt-users@lists.spacepope.org" target="_blank">yt-users@lists.spacepope.org</a><br>
>>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>><br>
>><br>
><br>
><br>
> _______________________________________________<br>
> yt-users mailing list<br>
> <a href="mailto:yt-users@lists.spacepope.org" target="_blank">yt-users@lists.spacepope.org</a><br>
> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
><br>
_______________________________________________<br>
yt-users mailing list<br>
<a href="mailto:yt-users@lists.spacepope.org" target="_blank">yt-users@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
yt-users mailing list<br>
<a href="mailto:yt-users@lists.spacepope.org" target="_blank">yt-users@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></div><br></div>