[yt-dev] Transfer Function Plots

Sam Skillman samskillman at gmail.com
Fri Jun 8 14:30:51 PDT 2012


Matt:

I'm using pylab.  One thing I'm going to change is modify it so that it
gets the resolution of the image, then sets the pylab figure size based off
that.  I'd also rather have this go through freetype, but the development
time for that for me is >> (time left this afternoon).  I'd be +1 to
porting to freetype.

This is _very_ loosely coupled to the interactive camera.  I'm going to
(right now) move it over to the general camera class, and make it have the
API:

cam.save_annotated(fn, im=None, enhance=True)

This will take the filename, the previously produced image array or try to
get the cam.image array (which exists for some variants of the camera), and
then apply the standard deviation clipping that is presence in the
enhance.py on the hub.  I'm going to strongly encourage the enhance=True.
 I've been making movies that use the same normalization and have been
happy with all of them.

While I'm at it, I'll add a cam.save(fn, im, enhance=True) that skips the
annotation.

+/- 1 on those additions?  Requests?

All others: Thanks for the enthusiastic response!

Sam

On Fri, Jun 8, 2012 at 3:28 PM, Christopher Moody <cemoody at ucsc.edu> wrote:

> Beautiful, +1!
>
> chris
>
> On Fri, Jun 8, 2012 at 2:22 PM, Cameron Hummels
> <chummels at astro.columbia.edu> wrote:
> > +1e6!  I need to use something like this right now! :)  Great work, Sam!
> >
> >
> > On 6/8/12 5:06 PM, Sam Skillman wrote:
> >>
> >> Okay, I've prototyped something that works like this:
> >>
> >> interactive_camera.snapshot()
> >> ...pops up interactive matplotlib window...
> >> interactive_camera.save('test.png')
> >> ...grabs all needed information and makes this...
> >>
> >> Inline image 1
> >>
> >> +/- 1?  It just needs some cleanup, like reducing the extent of the
> >> colorbar so you don't get the black strip at the top and bottom of the
> >> image.
> >>
> >> Sam
> >>
> >> On Fri, Jun 8, 2012 at 2:12 PM, Richard P Wagner <rpwagner at sdsc.edu
> >> <mailto:rpwagner at sdsc.edu>> wrote:
> >>
> >>
> >>    On Jun 8, 2012, at 12:40 PM, Nathan Goldbaum wrote:
> >>
> >>>    I'd prefer it if the transfer function plot were split into two
> >>>    separate frames.  Right now, it's easy to think that the black
> >>>    background color image contains opacity information since the
> >>>    frame is plotted with a y axis.  I'd prefer it if only the white
> >>>    line was plotted with a y axis and the black background image was
> >>>    plotted in a separate frame like a color bar with no y axis.
> >>>     This would also let the user see the tick marks for the opacity
> >>>    plot much more easily.
> >>>
> >>>    In general, I like plotting the transfer function like a color
> >>>    bar (sort of like Stella Offner's image on the yt homepage
> >>>    [http://yt-project.org/img/offner_etal.png]).
> >>
> >>
> >>    That's what came to mind when I was reading this. For a while,
> >>    we've been putting a combination color bar-transfer function
> >>    graphic in our renderings with ANL (skip about 30 seconds into
> >>    http://www.youtube.com/watch?v=5dOt0IaRY4U). I think it's very
> >>    natural to overlay a transfer function plot onto a color bar, and
> >>    it provides a lot of information in a simple fashion.
> >>
> >>    --Rick
> >>
> >>>
> >>>    Nathan Goldbaum
> >>>    Graduate Student
> >>>    Astronomy & Astrophysics, UCSC
> >>>    goldbaum at ucolick.org <mailto:goldbaum at ucolick.org>
> >>>    http://www.ucolick.org/~goldbaum <
> http://www.ucolick.org/%7Egoldbaum>
> >>>
> >>>
> >>>    On Jun 8, 2012, at 12:34 PM, Sam Skillman wrote:
> >>>
> >>>>    Hi all,
> >>>>
> >>>>    I've been experimenting with different ways to plot the transfer
> >>>>    functions, and in particular in the context of the
> >>>>    InteractiveCamera.
> >>>>
> >>>>    What are people's thoughts about this behavior:
> >>>>
> >>>>    http://i.imgur.com/CGZ7Z.png
> >>>>    http://i.imgur.com/OCsVt.jpg
> >>>>    http://i.imgur.com/VNEse.png
> >>>>
> >>>>    btw, you can get this behavior by changing your script to call
> >>>>    pf.h.interactive_camera, and then running in ipython with a
> >>>>    working matplotlib backend.
> >>>>
> >>>>    I'll let Nathan bring up his concerns rather than me try to
> >>>>    convey them.
> >>>>
> >>>>    Sam
> >>>>
> >>>>
> >>>>
> >>>>    !DSPAM:10175,4fd253db101042955315835!
> >>>>    _______________________________________________
> >>>>    yt-dev mailing list
> >>>>    yt-dev at lists.spacepope.org <mailto:yt-dev at lists.spacepope.org>
> >>>>    http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
> >>>>
> >>>>
> >>>>    !DSPAM:10175,4fd253db101042955315835!
> >>>
> >>>
> >>>    _______________________________________________
> >>>    yt-dev mailing list
> >>>    yt-dev at lists.spacepope.org <mailto:yt-dev at lists.spacepope.org>
> >>>    http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
> >>
> >>
> >>
> >>    _______________________________________________
> >>    yt-dev mailing list
> >>    yt-dev at lists.spacepope.org <mailto:yt-dev at lists.spacepope.org>
> >>
> >>    http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
> >>
> >>
> >>
> >>
> >> _______________________________________________
> >> yt-dev mailing list
> >> yt-dev at lists.spacepope.org
> >> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
> >
> > _______________________________________________
> > yt-dev mailing list
> > yt-dev at lists.spacepope.org
> > http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
> _______________________________________________
> yt-dev mailing list
> yt-dev at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20120608/8bde5929/attachment.htm>


More information about the yt-dev mailing list