[yt-dev] Transfer Function Plots

Matthew Turk matthewturk at gmail.com
Fri Jun 8 14:59:35 PDT 2012


Hi Sam,

On Fri, Jun 8, 2012 at 5:30 PM, Sam Skillman <samskillman at gmail.com> wrote:
> 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.

Okay, let's put that on the agenda but not pre-PR/merge.  I seem to
recall that freetype was put in originally so we *could* do colorbars
like this, so it would be nice to deliver on that.  The ticking code
we use from matplotlib can be used here; right now it's put to use
making colorbars in the browser (out of DIV elements, I think) in
Reason.  I'd be happy to work through this with you so we could get it
going at some point down the road.  For now, pylab it is!

>
> 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?

+1.

Maybe this is inspiring enough to get that VR widget in Reason going ... :-)

-Matt

>
> 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
>
>
>
> _______________________________________________
> yt-dev mailing list
> yt-dev at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>



More information about the yt-dev mailing list