[chimera-dev] examples of 2-D plotting in plugins?
Eric Pettersen
pett at cgl.ucsf.edu
Wed Jan 14 10:43:23 PST 2009
Tom Goddard has done the work to get matplotlib to compile with
Chimera. It's now available in the daily builds.
--Eric
On Dec 16, 2008, at 10:35 AM, Randy Heiland wrote:
> Thanks for clarifying, Tom. Am happy to hear you plan to eventually
> include mpl in Chimera.
>
> Yes, both Charlie (Moad) and I have built it for Windows, but that was
> several versions back when we did it regularly. What prompted this
> thread initially was my attempt to do it again, but discovered an
> apparent mismatch when Chimera jumped to Tcl/Tk 8.5 and mpl still
> wanted 8.4. Perhaps the inclusion of mpl into Chimera will be solved
> by the passage of time, after the libraries (and stars) align.
> Anyway, the only tips I'd have are the obvious ones - to tweak those
> checks/settings done in mpl's setup/setupext.py scripts related to the
> various dependencies (numpy, tcl/tk, etc) before running chimera's
> python on setup.py. Just running:
>
> ...path-to-chimera-python setup.py
>
> will reveal what mpl will attempt to use to build.
>
> Maybe I'll dust off my Window's laptop :) and make another attempt in
> the next few days.
>
> -Randy
>
>
> On Dec 16, 2008, at 1:16 PM, Tom Goddard wrote:
>
>> Hi Randy,
>>
>> On the Mac the Chimera python executable finds the Python framework
>> and runs it. When you start Chimera's Python from a shell it is
>> finding
>> the Mac system Python framework instead of the one included in
>> Chimera.app. The way Chimera gets its own Python framework instead
>> of
>> the system one is that the start-up script
>>
>> Chimera.app/Contents/Resources/bin/chimera
>>
>> sets the DYLD_FRAMEWORK_PATH environment variable to point to the
>> Chimera Python (and Tcl/Tk) frameworks.
>>
>> We discussed including matplotlib in the Chimera distribution and
>> agreed it is a good idea and we plan on doing it though a date has
>> not
>> been set. I would like to try using it this month or next month so I
>> may add it to Chimera soon. The trick is to get it to build on all
>> platforms (Windows, Linux, Mac). Have you built it for Chimera on
>> Windows. Any tips?
>>
>> Thanks,
>>
>> Tom
>>
>>
>> Randy Heiland wrote:
>>> Hi Eric and others,
>>>
>>> I've returned to this little exercise of trying to build matplotlib
>>> using Chimera and have a basic question:
>>>
>>> - using the Chimera-1.3.2577-osx_aqua, when I bring up IDLE, I see:
>>> Python 2.5.2 (r252:60911, Dec 9 2008, 02:00:10)
>>> [GCC 4.0.1 (Apple Computer, Inc. build 5370)] on darwin
>>>
>>> however, when I run Chimera's python manually, I see:
>>>
>>> $ /Users/heiland/dev/Chimera-1.3.2577-osx_aqua.app/Contents/
>>> Resources/
>>> bin/python2.5
>>> Python 2.5.1 (r251:54869, Apr 18 2007, 22:08:04)
>>> [GCC 4.0.1 (Apple Computer, Inc. build 5367)] on darwin
>>>
>>> Why am I seeing 2 different Python builds?
>>>
>>> One of the initial things I'm trying to resolve is the ability to
>>> 'import Tkinter'. I can do so from the former, but not the latter
>>> (even after setting sys.path to be what it is in the former).
>>>
>>> thanks, Randy
>>>
>>>
>>> On Nov 3, 2008, at 5:52 PM, Eric Pettersen wrote:
>>>
>>>
>>>> FYI, the last paragraph of my reply below may be of general
>>>> interest
>>>> to developers interested in plotting data...
>>>>
>>>> On Oct 31, 2008, at 10:09 AM, Randy Heiland wrote:
>>>>
>>>> Hi gang,
>>>>
>>>> For one of the Chimera plugins that I now maintain, I'm considering
>>>> eliminating the use of matplotlib and wondering if Chimera's
>>>> innards
>>>> are capable of doing what I want. For starters, are there any
>>>> example plugins, etc that demonstrate how one could do simple
>>>> plotting and simple (image) contours? In addition, I'd need to
>>>> handle mouse events, e.g. to retrieve x,y positions on the contour
>>>> image.
>>>>
>>>> Hi Randy,
>>>> I'm thinking that what Chimera currently provides will not be an
>>>> adequate replacement for the capabilities of matplotlib that
>>>> NLOPredict uses. Aside from the basic Tk widgets themselves (the
>>>> most salient of which is Canvas) the only relevant widgets I can
>>>> think of is an interactive histogram widget in CGLtk.Histogram, and
>>>> a basic line/point plotting widget available through
>>>> Scientific.TkWidgets.TkPlotCanvas
>>>> (Scientific.TkWidgets.TkPlotCanvas<http://dirac.cnrs-orleans.fr/ScientificPython/ScientificPythonManual/Scientific.TkWidgets.TkPlotCanvas-module.html
>>>>
>>>>> ).
>>>>>
>>>> But I think NLOPredict needs interactive contour and bar graphs.
>>>> As
>>>> long as you can generate the contour image yourself somehow, I
>>>> think
>>>> you can pretty easily gin up an interactive contour plot using the
>>>> Image item of Tk.Canvas. As for the bar graph, would BLT (A User's
>>>> Guide to Pmw.Blt<http://heim.ifi.uio.no/~hpl/Pmw.Blt/doc/>) provide
>>>> enough functionality if we decided to provide that? It seems to
>>>> provide bar charts (A complete reference to the Pmw.Blt plot
>>>> widget<http://heim.ifi.uio.no/~hpl/Pmw.Blt/doc/reference.html%23bar_create(...)
>>>>
>>>>> ). It also might or might not be easier for you to provide BLT
>>>>> for
>>>>>
>>>> NLOPredict as a stopgap measure.
>>>> So the Chimera developers will be discussing possibly providing
>>>> some
>>>> kind of plotting library at our next weekly meeting. Clearly,
>>>> matplotlib is the "Cadillac" of plotting libraries. And like a
>>>> Cadillac it has the downside of large size -- probably in the range
>>>> of 60-80MB before compression. It also has the drawback of
>>>> depending on a lot of other packages which we would also have to
>>>> include and port to all our supported platforms, including 64-bit
>>>> versions thereof. So I guess the question is whether we could get
>>>> away with including something smaller like BLT, which we would also
>>>> be able to deploy more quickly due to the lower effort involved, or
>>>> do people really need the unique capabilities of matplotlib?
>>>> Anybody?
>>>>
>>>> --Eric
>>>>
>>>> Eric Pettersen
>>>> UCSF Computer Graphics Lab
>>>> http://www.cgl.ucsf.edu
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Chimera-dev mailing list
>>> Chimera-dev at cgl.ucsf.edu
>>> http://www.cgl.ucsf.edu/mailman/listinfo/chimera-dev
>>>
>
> _______________________________________________
> Chimera-dev mailing list
> Chimera-dev at cgl.ucsf.edu
> http://www.cgl.ucsf.edu/mailman/listinfo/chimera-dev
More information about the Chimera-dev
mailing list