<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>FYI, the last paragraph of my reply below may be of general interest to developers interested in plotting data...</div><div><br></div><div>On Oct 31, 2008, at 10:09 AM, Randy Heiland wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Hi gang,<br><br>For one of the Chimera plugins that I now maintain, I'm considering <br>eliminating the use of matplotlib and wondering if Chimera's innards <br>are capable of doing what I want. For starters, are there any <br>example plugins, etc that demonstrate how one could do simple <br>plotting and simple (image) contours? In addition, I'd need to <br>handle mouse events, e.g. to retrieve x,y positions on the contour <br>image.<br></div></blockquote></div><br><div>Hi Randy,</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>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 (<a href="http://dirac.cnrs-orleans.fr/ScientificPython/ScientificPythonManual/Scientific.TkWidgets.TkPlotCanvas-module.html">Scientific.TkWidgets.TkPlotCanvas</a>).</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>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 href="http://heim.ifi.uio.no/~hpl/Pmw.Blt/doc/">A User's Guide to Pmw.Blt</a>) provide enough functionality if we decided to provide that? It seems to provide bar charts (<a href="http://heim.ifi.uio.no/~hpl/Pmw.Blt/doc/reference.html%23bar_create(...)">A complete reference to the Pmw.Blt plot widget</a>). It also might or might not be easier for you to provide BLT for NLOPredict as a stopgap measure.</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>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?<br></div><div><br></div><div>--Eric</div><div><br></div><div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="5" style="font: normal normal normal 16px/normal Helvetica; "> Eric Pettersen</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="5" style="font: normal normal normal 16px/normal Helvetica; "> UCSF Computer Graphics Lab</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="5" style="font: normal normal normal 16px/normal Helvetica; "> <a href="http://www.cgl.ucsf.edu">http://www.cgl.ucsf.edu</a></font></div><div><br></div></div></div></body></html>