tk backend broken (somehow?)

Have a look at the recipe in conda-rescipes for matplotlib, they might be doing some funny patching.

···

On Mon, Nov 17, 2014 at 5:17 AM, Phil Elson <pelson.pub@…149…> wrote:

Mike made some changes to this recently. https://github.com/matplotlib/matplotlib/pull/3778

May be the cause.

On 16 November 2014 18:12, Benjamin Root <ben.root@…553…> wrote:

And with my continuing saga of backend-specific things…

I was using conda, but because it does not ship with pygtk support, I had to manually install pygtk into the conda environment and then install matplotlib from source. All that seemed to work fine when I worked on Wx and Gtk examples for my book.

I went back to a (previously working) Tk example to polish it, and I get all sorts of errors now. I have tried multiple releases of matplotlib from source (doing a git clean -fxd between them), all with similar errors. In fact, with master, the error causes a segfault:

ben@…965…:~/Documents/InteractiveMPL$ python chp5/slider_tk.py
Exception in Tkinter callback
Traceback (most recent call last):
File “/home/ben/miniconda/lib/python2.7/lib-tk/Tkinter.py”, line 1486, in call
return self.func(*args)
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py”, line 278, in resize
self.show()
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py”, line 350, in draw
tkagg.blit(self._tkphoto, self.renderer._renderer, colormode=2)
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/tkagg.py”, line 30, in blit
id(data), colormode, id(bbox_array))
TclError
alloc: invalid block: 0x2cfe3b0: 0 0
Aborted (core dumped)

The line in question is (at least in v1.3.1, it is slightly different in more recent versions):
tk.call(“PyAggImagePhoto”, photoimage, id(aggimage), colormode, id(bbox_array))

This happens regardless of what example I use (my own or otherwise). There is no blit-specific code in the examples. All of this worked with the conda-supplied matplotlib, but never the from-source-into-a-conda-environment install.

Thoughts?

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

Indeed, there are some oddities, but mostly with regards to Qt and forcing it to build and link against (presumedly) the conda package of it. There is a modification of the setupext.py that happens at build time to replace all instances of “/usr/local” with “$PREFIX”. Perhaps what is happening is that my local builds of matplotlib is compiling and linking against my system install of the tk/tcl headers and libraries, and that might be conflicting with the conda-shipped tk/tcl packages?

I’ll have to experiment a bit more tonight. Thanks for the suggestion!

Ben Root

···

On Mon, Nov 17, 2014 at 11:07 PM, Thomas Caswell <tcaswell@…149…> wrote:

Have a look at the recipe in conda-rescipes for matplotlib, they might be doing some funny patching.

On Mon, Nov 17, 2014, 22:48 Benjamin Root <ben.root@…553…> wrote:

Ok, I am just really confused now. I have confirmed that using the matplotlib supplied by miniconda (v1.4.2) works just fine. Ripping that out and building version 1.4.2 from source results in the traceback. Same thing for v1.3.1. I have even tried checking out PR#3811 which addresses the weird constructor issues we found today, and I still get the segfault.

Maybe I should try getting out of the conda environment entirely and try EPD instead to see if that makes a difference?

Ben Root


Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server

from Actuate! Instantly Supercharge Your Business Reports and Dashboards

with Interactivity, Sharing, Native Excel Exports, App Integration & more

Get technology previously reserved for billion-dollar corporations, FREE

http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk_______________________________________________

Matplotlib-devel mailing list

Matplotlib-devel@…1041…sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

On Mon, Nov 17, 2014 at 5:17 AM, Phil Elson <pelson.pub@…149…> wrote:

Mike made some changes to this recently. https://github.com/matplotlib/matplotlib/pull/3778

May be the cause.

On 16 November 2014 18:12, Benjamin Root <ben.root@…553…> wrote:

And with my continuing saga of backend-specific things…

I was using conda, but because it does not ship with pygtk support, I had to manually install pygtk into the conda environment and then install matplotlib from source. All that seemed to work fine when I worked on Wx and Gtk examples for my book.

I went back to a (previously working) Tk example to polish it, and I get all sorts of errors now. I have tried multiple releases of matplotlib from source (doing a git clean -fxd between them), all with similar errors. In fact, with master, the error causes a segfault:

ben@…965…:~/Documents/InteractiveMPL$ python chp5/slider_tk.py
Exception in Tkinter callback
Traceback (most recent call last):
File “/home/ben/miniconda/lib/python2.7/lib-tk/Tkinter.py”, line 1486, in call
return self.func(*args)
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py”, line 278, in resize
self.show()
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py”, line 350, in draw
tkagg.blit(self._tkphoto, self.renderer._renderer, colormode=2)
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/tkagg.py”, line 30, in blit
id(data), colormode, id(bbox_array))
TclError
alloc: invalid block: 0x2cfe3b0: 0 0
Aborted (core dumped)

The line in question is (at least in v1.3.1, it is slightly different in more recent versions):
tk.call(“PyAggImagePhoto”, photoimage, id(aggimage), colormode, id(bbox_array))

This happens regardless of what example I use (my own or otherwise). There is no blit-specific code in the examples. All of this worked with the conda-supplied matplotlib, but never the from-source-into-a-conda-environment install.

Thoughts?

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

Why do we have a function in setupext.py called “hardcoded_tcl_config()”? In any case, it looks like all I needed to do was change the default value for line 156 to be the prefix location of my miniconda install, and things started to work again!

Perhaps we need to take another look through setupext.py, and try to get it using prefixes more (or at least consolidate all of these hard-coded values into one place!)

Cheers!
Ben Root

···

On Tue, Nov 18, 2014 at 12:06 PM, Benjamin Root <ben.root@…553…> wrote:

Indeed, there are some oddities, but mostly with regards to Qt and forcing it to build and link against (presumedly) the conda package of it. There is a modification of the setupext.py that happens at build time to replace all instances of “/usr/local” with “$PREFIX”. Perhaps what is happening is that my local builds of matplotlib is compiling and linking against my system install of the tk/tcl headers and libraries, and that might be conflicting with the conda-shipped tk/tcl packages?

I’ll have to experiment a bit more tonight. Thanks for the suggestion!

Ben Root

On Mon, Nov 17, 2014 at 11:07 PM, Thomas Caswell <tcaswell@…149…> wrote:

Have a look at the recipe in conda-rescipes for matplotlib, they might be doing some funny patching.

On Mon, Nov 17, 2014, 22:48 Benjamin Root <ben.root@…553…> wrote:

Ok, I am just really confused now. I have confirmed that using the matplotlib supplied by miniconda (v1.4.2) works just fine. Ripping that out and building version 1.4.2 from source results in the traceback. Same thing for v1.3.1. I have even tried checking out PR#3811 which addresses the weird constructor issues we found today, and I still get the segfault.

Maybe I should try getting out of the conda environment entirely and try EPD instead to see if that makes a difference?

Ben Root


Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server

from Actuate! Instantly Supercharge Your Business Reports and Dashboards

with Interactivity, Sharing, Native Excel Exports, App Integration & more

Get technology previously reserved for billion-dollar corporations, FREE

http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk_______________________________________________

Matplotlib-devel mailing list

Matplotlib-devel@…1041…sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

On Mon, Nov 17, 2014 at 5:17 AM, Phil Elson <pelson.pub@…149…> wrote:

Mike made some changes to this recently. https://github.com/matplotlib/matplotlib/pull/3778

May be the cause.

On 16 November 2014 18:12, Benjamin Root <ben.root@…553…> wrote:

And with my continuing saga of backend-specific things…

I was using conda, but because it does not ship with pygtk support, I had to manually install pygtk into the conda environment and then install matplotlib from source. All that seemed to work fine when I worked on Wx and Gtk examples for my book.

I went back to a (previously working) Tk example to polish it, and I get all sorts of errors now. I have tried multiple releases of matplotlib from source (doing a git clean -fxd between them), all with similar errors. In fact, with master, the error causes a segfault:

ben@…965…:~/Documents/InteractiveMPL$ python chp5/slider_tk.py
Exception in Tkinter callback
Traceback (most recent call last):
File “/home/ben/miniconda/lib/python2.7/lib-tk/Tkinter.py”, line 1486, in call
return self.func(*args)
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py”, line 278, in resize
self.show()
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py”, line 350, in draw
tkagg.blit(self._tkphoto, self.renderer._renderer, colormode=2)
File “/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/tkagg.py”, line 30, in blit
id(data), colormode, id(bbox_array))
TclError
alloc: invalid block: 0x2cfe3b0: 0 0
Aborted (core dumped)

The line in question is (at least in v1.3.1, it is slightly different in more recent versions):
tk.call(“PyAggImagePhoto”, photoimage, id(aggimage), colormode, id(bbox_array))

This happens regardless of what example I use (my own or otherwise). There is no blit-specific code in the examples. All of this worked with the conda-supplied matplotlib, but never the from-source-into-a-conda-environment install.

Thoughts?

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

Why do we have a function in setupext.py called
"hardcoded_tcl_config()"? In any case, it looks like all I needed to do
was change the default value for line 156 to be the prefix location of
my miniconda install, and things started to work again!

Perhaps we need to take another look through setupext.py, and try to get
it using prefixes more (or at least consolidate all of these hard-coded
values into one place!)

Ben,

Good idea; perhaps you would like to turn it into a github issue to reduce the likelihood it is dropped.

Eric

···

On 2014/11/18, 9:55 PM, Benjamin Root wrote:

Cheers!
Ben Root

On Tue, Nov 18, 2014 at 12:06 PM, Benjamin Root <ben.root@...553... > <mailto:ben.root@…553…>> wrote:

    Indeed, there are some oddities, but mostly with regards to Qt and
    forcing it to build and link against (presumedly) the conda package
    of it. There is a modification of the setupext.py that happens at
    build time to replace all instances of "/usr/local" with "$PREFIX".
    Perhaps what is happening is that my local builds of matplotlib is
    compiling and linking against my system install of the tk/tcl
    headers and libraries, and that might be conflicting with the
    conda-shipped tk/tcl packages?

    I'll have to experiment a bit more tonight. Thanks for the suggestion!

    Ben Root

    On Mon, Nov 17, 2014 at 11:07 PM, Thomas Caswell <tcaswell@...149... > <mailto:tcaswell@…149…>> wrote:

        Have a look at the recipe in conda-rescipes for matplotlib, they
        might be doing some funny patching.

        On Mon, Nov 17, 2014, 22:48 Benjamin Root <ben.root@...553... > <mailto:ben.root@…553…>> wrote:

            Ok, I am just really confused now. I have confirmed that
            using the matplotlib supplied by miniconda (v1.4.2) works
            just fine. Ripping that out and building version 1.4.2 from
            source results in the traceback. Same thing for v1.3.1. I
            have even tried checking out PR#3811 which addresses the
            weird constructor issues we found today, and I still get the
            segfault.

            Maybe I should try getting out of the conda environment
            entirely and try EPD instead to see if that makes a difference?

            Ben Root

            On Mon, Nov 17, 2014 at 5:17 AM, Phil Elson > <pelson.pub@...149... <mailto:pelson.pub@…149…>> wrote:

                Mike made some changes to this recently.
                Reduce coupling between _tkagg and _backend_agg modules by mdboom · Pull Request #3778 · matplotlib/matplotlib · GitHub

                May be the cause.

                On 16 November 2014 18:12, Benjamin Root > <ben.root@...553... <mailto:ben.root@…553…>> wrote:

                    And with my continuing saga of backend-specific
                    things...

                    I was using conda, but because it does not ship with
                    pygtk support, I had to manually install pygtk into
                    the conda environment and then install matplotlib
                    from source. All that seemed to work fine when I
                    worked on Wx and Gtk examples for my book.

                    I went back to a (previously working) Tk example to
                    polish it, and I get all sorts of errors now. I have
                    tried multiple releases of matplotlib from source
                    (doing a git clean -fxd between them), all with
                    similar errors. In fact, with master, the error
                    causes a segfault:

                    ben@...965...:~/Documents/InteractiveMPL$ python
                    chp5/slider_tk.py
                    Exception in Tkinter callback
                    Traceback (most recent call last):
                       File
                    "/home/ben/miniconda/lib/python2.7/lib-tk/Tkinter.py",
                    line 1486, in __call__
                         return self.func(*args)
                       File
                    "/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py",
                    line 278, in resize
                         self.show()
                       File
                    "/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py",
                    line 350, in draw
                         tkagg.blit(self._tkphoto,
                    self.renderer._renderer, colormode=2)
                       File
                    "/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/tkagg.py",
                    line 30, in blit
                         id(data), colormode, id(bbox_array))
                    TclError
                    alloc: invalid block: 0x2cfe3b0: 0 0
                    Aborted (core dumped)

                    The line in question is (at least in v1.3.1, it is
                    slightly different in more recent versions):
                    tk.call("PyAggImagePhoto", photoimage, id(aggimage),
                    colormode, id(bbox_array))

                    This happens regardless of what example I use (my
                    own or otherwise). There is no blit-specific code in
                    the examples. All of this worked with the
                    conda-supplied matplotlib, but never the
                    from-source-into-a-conda-environment install.

                    Thoughts?
                    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
                    <mailto:Matplotlib-devel@lists.sourceforge.net>
                    matplotlib-devel List Signup and Options

            ------------------------------__------------------------------__------------------
            Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT
            Server
            from Actuate! Instantly Supercharge Your Business Reports
            and Dashboards
            with Interactivity, Sharing, Native Excel Exports, App
            Integration & more
            Get technology previously reserved for billion-dollar
            corporations, FREE
            http://pubads.g.doubleclick.__net/gampad/clk?id=157005751&__iu=/4140/ostg.clktrk
            <http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk&gt;\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
            Matplotlib-devel mailing list
            Matplotlib-devel@...1042...
            <mailto:Matplotlib-devel@lists.sourceforge.net>
            https://lists.sourceforge.net/__lists/listinfo/matplotlib-__devel
            <https://lists.sourceforge.net/lists/listinfo/matplotlib-devel&gt;

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk

_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
matplotlib-devel List Signup and Options

Good idea. I’ll put together something tonight.

···

On Thu, Nov 20, 2014 at 2:44 PM, Eric Firing <efiring@…229…> wrote:

On 2014/11/18, 9:55 PM, Benjamin Root wrote:

Why do we have a function in setupext.py called

“hardcoded_tcl_config()”? In any case, it looks like all I needed to do

was change the default value for line 156 to be the prefix location of

my miniconda install, and things started to work again!

Perhaps we need to take another look through setupext.py, and try to get

it using prefixes more (or at least consolidate all of these hard-coded

values into one place!)

Ben,

Good idea; perhaps you would like to turn it into a github issue to

reduce the likelihood it is dropped.

Eric

Cheers!

Ben Root

On Tue, Nov 18, 2014 at 12:06 PM, Benjamin Root <ben.root@…553…

mailto:ben.root@...553...> wrote:

Indeed, there are some oddities, but mostly with regards to Qt and
forcing it to build and link against (presumedly) the conda package
of it. There is a modification of the setupext.py that happens at
build time to replace all instances of "/usr/local" with "$PREFIX".
Perhaps what is happening is that my local builds of matplotlib is
compiling and linking against my system install of the tk/tcl
headers and libraries, and that might be conflicting with the
conda-shipped tk/tcl packages?
I'll have to experiment a bit more tonight. Thanks for the suggestion!
Ben Root
On Mon, Nov 17, 2014 at 11:07 PM, Thomas Caswell <tcaswell@...149...
<mailto:tcaswell@...149...>> wrote:
    Have a look at the recipe in conda-rescipes for matplotlib, they
    might be doing some funny patching.
    On Mon, Nov 17, 2014, 22:48 Benjamin Root <ben.root@...553...
    <mailto:ben.root@...553...>> wrote:
        Ok, I am just really confused now. I have confirmed that
        using the matplotlib supplied by miniconda (v1.4.2) works
        just fine. Ripping that out and building version 1.4.2 from
        source results in the traceback. Same thing for v1.3.1. I
        have even tried checking out PR#3811 which addresses the
        weird constructor issues we found today, and I still get the
        segfault.
        Maybe I should try getting out of the conda environment
        entirely and try EPD instead to see if that makes a difference?
        Ben Root
        On Mon, Nov 17, 2014 at 5:17 AM, Phil Elson
        <pelson.pub@...149... <mailto:pelson.pub@...149...>> wrote:
            Mike made some changes to this recently.
            [https://github.com/matplotlib/matplotlib/pull/3778](https://github.com/matplotlib/matplotlib/pull/3778)
            May be the cause.
            On 16 November 2014 18:12, Benjamin Root
            <ben.root@...552...553... <mailto:ben.root@...867......>> wrote:
                And with my continuing saga of backend-specific
                things...
                I was using conda, but because it does not ship with
                pygtk support, I had to manually install pygtk into
                the conda environment and then install matplotlib
                from source. All that seemed to work fine when I
                worked on Wx and Gtk examples for my book.
                I went back to a (previously working) Tk example to
                polish it, and I get all sorts of errors now. I have
                tried multiple releases of matplotlib from source
                (doing a git clean -fxd between them), all with
                similar errors. In fact, with master, the error
                causes a segfault:
                ben@...965...:~/Documents/InteractiveMPL$ python
                chp5/slider_tk.py
                Exception in Tkinter callback
                Traceback (most recent call last):
                   File
                "/home/ben/miniconda/lib/python2.7/lib-tk/Tkinter.py",
                line 1486, in __call__
                     return self.func(*args)
                   File
                "/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py",
                line 278, in resize
                     self.show()
                   File
                "/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/backend_tkagg.py",
                line 350, in draw
                     tkagg.blit(self._tkphoto,
                self.renderer._renderer, colormode=2)
                   File
                "/home/ben/miniconda/lib/python2.7/site-packages/matplotlib-1.5.x-py2.7-linux-x86_64.egg/matplotlib/backends/tkagg.py",
                line 30, in blit
                     id(data), colormode, id(bbox_array))
                TclError
                alloc: invalid block: 0x2cfe3b0: 0 0
                Aborted (core dumped)
                The line in question is (at least in v1.3.1, it is
                slightly different in more recent versions):
                tk.call("PyAggImagePhoto", photoimage, id(aggimage),
                colormode, id(bbox_array))
                This happens regardless of what example I use (my
                own or otherwise). There is no blit-specific code in
                the examples. All of this worked with the
                conda-supplied matplotlib, but never the
                from-source-into-a-conda-environment install.
                Thoughts?
                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](http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk)
                _______________________________________________
                Matplotlib-devel mailing list
                Matplotlib-devel@lists.sourceforge.net
                <mailto:Matplotlib-devel@lists.sourceforge.net>
                [https://lists.sourceforge.net/lists/listinfo/matplotlib-devel](https://lists.sourceforge.net/lists/listinfo/matplotlib-devel)
        ------------------------------__------------------------------__------------------
        Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT
        Server
        from Actuate! Instantly Supercharge Your Business Reports
        and Dashboards
        with Interactivity, Sharing, Native Excel Exports, App
        Integration & more
        Get technology previously reserved for billion-dollar
        corporations, FREE
        [http://pubads.g.doubleclick.](http://pubads.g.doubleclick.)__net/gampad/clk?id=157005751&__iu=/4140/ostg.clktrk
        <[http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk](http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk)>_________________________________________________
        Matplotlib-devel mailing list
        Matplotlib-devel@...1228...3...[sourceforge.net](http://sourceforge.net)
        <mailto:Matplotlib-devel@...743...forge.net>
        [https://lists.sourceforge.net/__lists/listinfo/matplotlib-__devel](https://lists.sourceforge.net/__lists/listinfo/matplotlib-__devel)
        <[https://lists.sourceforge.net/lists/listinfo/matplotlib-devel](https://lists.sourceforge.net/lists/listinfo/matplotlib-devel)>

Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server

from Actuate! Instantly Supercharge Your Business Reports and Dashboards

with Interactivity, Sharing, Native Excel Exports, App Integration & more

Get technology previously reserved for billion-dollar corporations, FREE

http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk


Matplotlib-devel mailing list

Matplotlib-devel@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server

from Actuate! Instantly Supercharge Your Business Reports and Dashboards

with Interactivity, Sharing, Native Excel Exports, App Integration & more

Get technology previously reserved for billion-dollar corporations, FREE

http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk


Matplotlib-devel mailing list

Matplotlib-devel@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-devel