It should be working. You're actually directly manipulating the matplotlib axes object so this has nothing to do with what has or hasn't been implemented in yt. It looks like the issue is actually due to an oversight in the implementation of PhasePlot._setup_plots(). I've fixed it in my local copy by doing the following: diff -r ff7f35e02f27 yt/visualization/profile_plotter.py --- a/yt/visualization/profile_plotter.py Mon Jan 27 11:52:18 2014 -0500 +++ b/yt/visualization/profile_plotter.py Tue Jan 28 12:13:42 2014 -0800 @@ -653,6 +653,7 @@ [ax.xaxis.label, ax.yaxis.label, cbax.yaxis.label] for label in labels: label.set_color(self._font_color) + self._plot_valid = True def save(self, name=None, mpl_kwargs=None): r""" This is in yt 3.0dev, so your line numbers may be slightly different if you're running the yt 2.6.1 release. Let me know if that works for you and I'll open a PR for this patch. -Nathan On Tue, Jan 28, 2014 at 11:55 AM, Stephanie Tonnesen <stonnes@gmail.com> wrote:
Hi Nathan,
Thanks! I am no longer getting a Key Error, but the commands are simply being ignored. Has this axis functionality been added to PhasePlot?
On Tue, Jan 28, 2014 at 1:00 PM, Nathan Goldbaum <nathan12343@gmail.com> wrote:
Hi Stephanie,
Phase plots are keyed with the z axis name. Try:
ax = plot.plots['CellMassMsun'].axes
-Nathan
On Tue, Jan 28, 2014 at 7:09 AM, Stephanie Tonnesen <stonnes@gmail.com> wrote:
Hi John (and all users!),
Thanks, this definitely worked! Now I am trying to make my axes look a bit nicer. I would like to change my y-axis label and rotate my x-axis ticklabels by 45 degrees or only print every other ticklabel. I tried to use the directions from the SlicePlot example,
http://yt-project.org/docs/dev/cookbook/simple_plots.html#showing-and-hiding...,
plot =
PhasePlot(tracerp25,"Density","z-velocity",["CellMassMsun"],weight_field=None,fontsize=13)#,x_bounds=[3e-28,5e-23],y_bounds=[-7e7,1.2e8])
plot.set_log("Density",True) plot.set_log("z-velocity",False) plot.set_zlim("CellMassMsun",1e4,1e9) plot.set_figure_size(3)
ax = plot.plots['z-velocity'].axes ax.set_ylabel(r'z-velocity (10$8$ cm/s)') for label in ax.xaxis.get_ticklabels(): label.set_rotation(45)
plot.save()
but get an error message:
ax = plot.plots['z-velocity'].axes KeyError: 'z-velocity'
I get the same error if I use 'Density' on that line instead.
Thanks in advance,
Stephanie
On Mon, Jan 27, 2014 at 11:31 AM, John ZuHone <jzuhone@gmail.com> wrote:
Stephanie,
So you don't have to wait for me to finish this, as a workaround/hack you can do this:
pf.field_info["Density"].take_log=True
which should get you the result you want.
Best,
John
On Jan 26, 2014, at 3:38 PM, Stephanie Tonnesen <stonnes@gmail.com> wrote:
Sweet! Thanks! (I really need to update more often and see what new cool things I can do...)
Stephanie
On Sun, Jan 26, 2014 at 3:34 PM, John ZuHone <jzuhone@gmail.com> wrote:
Hi Stephanie,
Ah yes, this is a problem I encountered just on Friday. We haven't set up PhasePlot or ProfilePlot to allow you to choose what scaling the plot is in.
Since I need it too, it was already on my todo list. So I'll do it tomorrow.
Best,
John
On Jan 26, 2014, at 3:32 PM, Stephanie Tonnesen <stonnes@gmail.com> wrote:
Hi John,
Ah, okay! Updating my yt made it work. yt version 2.7-dev.
EXCEPT that I can't get it to plot the Density on the x-axis in log space!
alld = pf.h.all_data()
tracerp25 = alld.cut_region(["grid['specific_scalar[0]'] > 0.5", "grid['z'] < 0.192","grid['z'] > -0.192","grid['cyl_RCode'] < 1.2"])
plot =
PhasePlot(tracerp25,"Density","z-velocity",["CellMassMsun"],weight_field=None,fontsize=30) plot.set_log("Density",True) plot.set_log("z-velocity",False) plot.set_zlim("CellMassMsun",1e3,1e9) plot.save()
Any more advice? Thanks!
Stephanie
On Sun, Jan 26, 2014 at 10:44 AM, John ZuHone <jzuhone@gmail.com> wrote:
Hi Stephanie,
What is your version of yt? PhasePlot is 2.6 and later.
Best,
John
On Jan 26, 2014, at 10:42 AM, Stephanie Tonnesen <stonnes@gmail.com> wrote:
Hi all,
Just as a quick update, I tried to change to using
plot =
PhasePlot(tracerp25,"Density","z-velocity",["CellMassSolar"],weight=None) plot.save()
and got an error: name 'PhasePlot' is not defined.
Thanks,
Stephanie
On Fri, Jan 24, 2014 at 3:47 PM, Stephanie Tonnesen <stonnes@gmail.com> wrote: > > Hi all, > > I am trying to make my phase plots smaller so they can fit more > nicely > into a paper. Alternatively, I would be fine with upping the font > size so > when I shrink them you can read the axes. I found advise on how to > do this > for slices, but not for phase_objects. > > pc = PlotCollection(pf) > > tracerp25 = alld.cut_region(["grid['specific_scalar[0]'] > 0.5", > "grid['z'] < 0.192","grid['z'] > -0.192","grid['cyl_RCode'] < 1.2"]) > > > > pc.add_phase_object(tracerp25,["Density","z-velocity","CellMassSolar"],weight=None,x_bins=50,y_bins=50,y_bounds > = [-4e7,8e7],x_bounds=[5e-28,5e-23],x_log=True,y_log=False) > > Any help is much appreciated! > > Thanks, > > Stephanie
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org