[yt-users] Unpickling phase plots

Matthew Turk matthewturk at gmail.com
Fri Jul 1 10:52:23 PDT 2011


Hi Dave,

Yeah, these are the kind of subtleties we really want to avoid at this
point.  The complexity makes it into a black box; this impedes the
ability to dump things into crazy layouts and whatnot.

At its heart, it's just a pcolormesh with masking for the zero values.
 If you rely on standard matplotlib/pylab to get there, I think you
should be okay -- but yes, the complexity and subtleties that have
developed there need to be eliminated.  For the most part they have
changed only slightly since Matplotlib 0.91, which was a long time
ago.  The motion to a stripped down object is to require more thought
on the part of the user, but in doing so to allow greater flexibility
in what can be done.

Good luck ...

-Matt

On Fri, Jul 1, 2011 at 10:48 AM, David Collins
<dcollins at physics.ucsd.edu> wrote:
>> Yes, but you should also be able to pickle just the ._data attribute
>> (which is a dict of numpy arrays) of the BinnedProfile2D object, too.
>
> I might revert to that.  I had tried that initially, but using the
> BinnedProfile object lets me call PlotTypes.PhasePlot directly, and
> there are a number of subtleties about the plotting done in that
> routine that I like, so I could avoid some wheel reinvention.
>
> Thanks a ton,
> d.
>
>>
>> On Fri, Jul 1, 2011 at 9:30 AM, David Collins <dcollins at physics.ucsd.edu> wrote:
>>>> designed to allow it, and I have been using successfully lately.  Use
>>>> yt.visualization.profile_plotter.PhasePlotter, which is substantially
>>>
>>> Cool, I'll give that a shot.
>>>
>>> Is it possible to cram an existing pickle (if I'm on the originating
>>> machine, where the unpickle works)  into the PhasePlotter format, or
>>> will I need to remake the phase plots?
>>>
>>> Thanks!
>>> d.
>>>
>>>
>>>> more constraining in exposed methods, but also provides the attribute
>>>> .plot, which can be pickled and which itself provides a to_mpl
>>>> function that takes filenames, axes or figures.  You should read the
>>>> source to see how it works, but this is the "future" for pickling and
>>>> passing plots.
>>>>
>>>> -Matt
>>>>
>>>>>
>>>>> This is a technique I've used in the past, so in principle it's sound.
>>>>>
>>>>> Thanks,
>>>>> d.
>>>>>
>>>>> Full trace:
>>>>> Traceback (most recent call last):
>>>>>  File "<stdin>", line 1, in <module>
>>>>>  File "p8_theta_coarse.py", line 6, in <module>
>>>>>    phase = fPickle.load(infile)
>>>>>  File "/Users/dcollins/Sites/Research/CodeGames/yt2.0/fPickle.py",
>>>>> line 9, in load
>>>>>    output = cPickle.load(inputfile,*args,**kwargs)
>>>>>  File "/Users/dcollins/local/lib/python2.6/site-packages/yt-2.1dev-py2.6-macosx-10.4-i386.egg/yt/data_objects/static_output.py",
>>>>> line 192, in _reconstruct_pf
>>>>>    pf = pfs.get_pf_hash(*args)
>>>>>  File "/Users/dcollins/local/lib/python2.6/site-packages/yt-2.1dev-py2.6-macosx-10.4-i386.egg/yt/utilities/parameter_file_storage.py",
>>>>> line 104, in get_pf_hash
>>>>>    return self._convert_pf(self._records[hash])
>>>>> KeyError: (('32aa7d1d4941760ffd8fdcab4ea97e1f',), <function
>>>>> _reconstruct_pf at 0x101f9d050>,
>>>>> ('32aa7d1d4941760ffd8fdcab4ea97e1f',))
>>>>>
>>>>>
>>>>> --
>>>>> Sent from my computer.
>>>>> _______________________________________________
>>>>> yt-users mailing list
>>>>> yt-users at lists.spacepope.org
>>>>> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>>>>>
>>>> _______________________________________________
>>>> yt-users mailing list
>>>> yt-users at lists.spacepope.org
>>>> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>>>>
>>>
>>>
>>>
>>> --
>>> Sent from my computer.
>>> _______________________________________________
>>> yt-users mailing list
>>> yt-users at lists.spacepope.org
>>> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>>>
>> _______________________________________________
>> yt-users mailing list
>> yt-users at lists.spacepope.org
>> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>>
>
>
>
> --
> Sent from my computer.
> _______________________________________________
> yt-users mailing list
> yt-users at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
>



More information about the yt-users mailing list