[matplotlib-devel] Tk backend different from others

2014-11-15 Thread Benjamin Root
I was working on my embedding chapter of my book when I noticed a subtle
difference in the tkagg backend from other interactive backends. First, all
other interactive Canvas classes inherit their respective backend's widget:

```
ben@tigger:~/Programs/matplotlib$ git grep "FigureCanvasBase" | grep "class
"
lib/matplotlib/backend_bases.py:class FigureCanvasBase(object):
lib/matplotlib/backends/backend_agg.py:class
FigureCanvasAgg(FigureCanvasBase):
lib/matplotlib/backends/backend_cairo.py:class FigureCanvasCairo
(FigureCanvasBase):
lib/matplotlib/backends/backend_gdk.py:class FigureCanvasGDK
(FigureCanvasBase):
lib/matplotlib/backends/backend_gtk.py:class FigureCanvasGTK
(gtk.DrawingArea, FigureCanvasBase):
lib/matplotlib/backends/backend_gtk3.py:class FigureCanvasGTK3
(Gtk.DrawingArea, FigureCanvasBase):
lib/matplotlib/backends/backend_macosx.py:class
FigureCanvasMac(_macosx.FigureCanvas, FigureCanvasBase):
lib/matplotlib/backends/backend_pdf.py:class
FigureCanvasPdf(FigureCanvasBase):
lib/matplotlib/backends/backend_pgf.py:class
FigureCanvasPgf(FigureCanvasBase):
lib/matplotlib/backends/backend_ps.py:class
FigureCanvasPS(FigureCanvasBase):
lib/matplotlib/backends/backend_qt5.py:class
FigureCanvasQT(QtWidgets.QWidget, FigureCanvasBase):
lib/matplotlib/backends/backend_svg.py:class
FigureCanvasSVG(FigureCanvasBase):
lib/matplotlib/backends/backend_template.py:class
FigureCanvasTemplate(FigureCanvasBase):
lib/matplotlib/backends/backend_wx.py:class
FigureCanvasWx(FigureCanvasBase, wx.Panel):
```
(I am going to assume that _macosx.FigureCanvas has all needed things
built-in, and I'll ignore the switched order for FigureCanvasWx). I have no
clue if this is potentially an issue or not, it just seemed a bit
inconsistent.

Second, while I haven't tried out all the backends yet, I noticed that the
Figure window for tkagg has an annoying border that the other backends
don't have. It is fairly wide, 4 pixels. I would like to get rid of that.
Does anybody object to that? I can make a PR for that and any other border
widths I find.

Cheers!
Ben Root
--
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


Re: [matplotlib-devel] Tk backend different from others

2014-11-15 Thread Eric Firing
On 2014/11/15, 6:14 AM, Benjamin Root wrote:
> I was working on my embedding chapter of my book when I noticed a subtle
> difference in the tkagg backend from other interactive backends. First,
> all other interactive Canvas classes inherit their respective backend's
> widget:
>
> ```
> ben@tigger:~/Programs/matplotlib$ git grep "FigureCanvasBase" | grep
> "class "
> lib/matplotlib/backend_bases.py:class FigureCanvasBase(object):
> lib/matplotlib/backends/backend_agg.py:class
> FigureCanvasAgg(FigureCanvasBase):
> lib/matplotlib/backends/backend_cairo.py:class FigureCanvasCairo
> (FigureCanvasBase):
> lib/matplotlib/backends/backend_gdk.py:class FigureCanvasGDK
> (FigureCanvasBase):
> lib/matplotlib/backends/backend_gtk.py:class FigureCanvasGTK
> (gtk.DrawingArea, FigureCanvasBase):
> lib/matplotlib/backends/backend_gtk3.py:class FigureCanvasGTK3
> (Gtk.DrawingArea, FigureCanvasBase):
> lib/matplotlib/backends/backend_macosx.py:class
> FigureCanvasMac(_macosx.FigureCanvas, FigureCanvasBase):
> lib/matplotlib/backends/backend_pdf.py:class
> FigureCanvasPdf(FigureCanvasBase):
> lib/matplotlib/backends/backend_pgf.py:class
> FigureCanvasPgf(FigureCanvasBase):
> lib/matplotlib/backends/backend_ps.py:class
> FigureCanvasPS(FigureCanvasBase):
> lib/matplotlib/backends/backend_qt5.py:class
> FigureCanvasQT(QtWidgets.QWidget, FigureCanvasBase):
> lib/matplotlib/backends/backend_svg.py:class
> FigureCanvasSVG(FigureCanvasBase):
> lib/matplotlib/backends/backend_template.py:class
> FigureCanvasTemplate(FigureCanvasBase):
> lib/matplotlib/backends/backend_wx.py:class
> FigureCanvasWx(FigureCanvasBase, wx.Panel):
> ```
> (I am going to assume that _macosx.FigureCanvas has all needed things
> built-in, and I'll ignore the switched order for FigureCanvasWx). I have
> no clue if this is potentially an issue or not, it just seemed a bit
> inconsistent.

There are a lot of differences; I don't know whether it would even be 
possible to make TkAgg more similar to the others. One of the 
differences is that most of the others have a native part (e.g., 
backend_qt5) and the part that pulls in agg (e.g., backend_qt5agg). 
TkAgg does it all in one. I don't think the difference is problematic.
>
> Second, while I haven't tried out all the backends yet, I noticed that
> the Figure window for tkagg has an annoying border that the other
> backends don't have. It is fairly wide, 4 pixels. I would like to get
> rid of that. Does anybody object to that? I can make a PR for that and
> any other border widths I find.

Offhand, sounds reasonable.

Eric

>
> Cheers!
> Ben Root
>
>
>
> --
> Comprehensive Server Monitoring with Site24x7.
> Monitor 10 servers for $9/Month.
> Get alerted through email, SMS, voice calls or mobile push notifications.
> Take corrective actions from your mobile device.
> http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
>
>
>
> ___
> Matplotlib-devel mailing list
> Matplotlib-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
>


--
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


[matplotlib-devel] examples/user_interfaces/pylab_with_gtk.py seems broken

2014-11-15 Thread Benjamin Root
My pygtk install is really hobbled (no thanks to anaconda...). Can someone
with a working gtk environment doublecheck that the pylab_with_gtk.py
script is broken on master? I am getting the following error:

ben@tigger:~/Programs/matplotlib/examples/user_interfaces$ python
pylab_with_gtk.py
Gtk-Message: Failed to load module "canberra-gtk-module"
Traceback (most recent call last):
  File "pylab_with_gtk.py", line 35, in 
toolbar.tooltips,
AttributeError: 'NavigationToolbar2GTKAgg' object has no attribute
'tooltips'

Cheers!
Ben Root
--
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel