You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(33) |
Dec
(20) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(7) |
Feb
(44) |
Mar
(51) |
Apr
(43) |
May
(43) |
Jun
(36) |
Jul
(61) |
Aug
(44) |
Sep
(25) |
Oct
(82) |
Nov
(97) |
Dec
(47) |
2005 |
Jan
(77) |
Feb
(143) |
Mar
(42) |
Apr
(31) |
May
(93) |
Jun
(93) |
Jul
(35) |
Aug
(78) |
Sep
(56) |
Oct
(44) |
Nov
(72) |
Dec
(75) |
2006 |
Jan
(116) |
Feb
(99) |
Mar
(181) |
Apr
(171) |
May
(112) |
Jun
(86) |
Jul
(91) |
Aug
(111) |
Sep
(77) |
Oct
(72) |
Nov
(57) |
Dec
(51) |
2007 |
Jan
(64) |
Feb
(116) |
Mar
(70) |
Apr
(74) |
May
(53) |
Jun
(40) |
Jul
(519) |
Aug
(151) |
Sep
(132) |
Oct
(74) |
Nov
(282) |
Dec
(190) |
2008 |
Jan
(141) |
Feb
(67) |
Mar
(69) |
Apr
(96) |
May
(227) |
Jun
(404) |
Jul
(399) |
Aug
(96) |
Sep
(120) |
Oct
(205) |
Nov
(126) |
Dec
(261) |
2009 |
Jan
(136) |
Feb
(136) |
Mar
(119) |
Apr
(124) |
May
(155) |
Jun
(98) |
Jul
(136) |
Aug
(292) |
Sep
(174) |
Oct
(126) |
Nov
(126) |
Dec
(79) |
2010 |
Jan
(109) |
Feb
(83) |
Mar
(139) |
Apr
(91) |
May
(79) |
Jun
(164) |
Jul
(184) |
Aug
(146) |
Sep
(163) |
Oct
(128) |
Nov
(70) |
Dec
(73) |
2011 |
Jan
(235) |
Feb
(165) |
Mar
(147) |
Apr
(86) |
May
(74) |
Jun
(118) |
Jul
(65) |
Aug
(75) |
Sep
(162) |
Oct
(94) |
Nov
(48) |
Dec
(44) |
2012 |
Jan
(49) |
Feb
(40) |
Mar
(88) |
Apr
(35) |
May
(52) |
Jun
(69) |
Jul
(90) |
Aug
(123) |
Sep
(112) |
Oct
(120) |
Nov
(105) |
Dec
(116) |
2013 |
Jan
(76) |
Feb
(26) |
Mar
(78) |
Apr
(43) |
May
(61) |
Jun
(53) |
Jul
(147) |
Aug
(85) |
Sep
(83) |
Oct
(122) |
Nov
(18) |
Dec
(27) |
2014 |
Jan
(58) |
Feb
(25) |
Mar
(49) |
Apr
(17) |
May
(29) |
Jun
(39) |
Jul
(53) |
Aug
(52) |
Sep
(35) |
Oct
(47) |
Nov
(110) |
Dec
(27) |
2015 |
Jan
(50) |
Feb
(93) |
Mar
(96) |
Apr
(30) |
May
(55) |
Jun
(83) |
Jul
(44) |
Aug
(8) |
Sep
(5) |
Oct
|
Nov
(1) |
Dec
(1) |
2016 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
(3) |
Sep
(1) |
Oct
(3) |
Nov
|
Dec
|
2017 |
Jan
|
Feb
(5) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
|
Sep
(7) |
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Thomas C. <tca...@gm...> - 2014-10-19 02:55:08
|
Hello, We are pleased to announce the release of matplotlib 1.4.1. This is a bug-fix release for the 1.4 series. - reverts the changes to interactive plotting so ion will work as before in all cases fixed boxplot regressions - fixes for finding freetype and libpng - sundry unicode fixes (looking up user folders, importing seaborn/pandas/networkx with macosx backend) - nbagg works with python 3 + new font awesome - fixed saving dialogue in QT5 Source tarballs are available on sourceforge, github, and pypi. In addition wheels for both mac and windows are available on both pypi and source forge and windows executable installers are available on source forge. http://matplotlib.org/downloads.html https://pypi.python.org/pypi/matplotlib/1.4.1 The matplotlib dev team |
From: Benjamin R. <ben...@ou...> - 2014-10-18 22:13:08
|
Ugh, yeah, that wouldn't be desirable. Hopefully someone else can thnk of something more clever. Perhaps the webagg backend might provide a clue? If not, I can live without it for the purposes of my book. As for my next hurdle. There is the well-known limitation with animation saving that the figure must be of the same size for the duration of the entire movie (the tight_layout bug). To make my session recorder fairly robust, it would be good to disable resizing the figure during the interactive session. I tried turning the canvas's resize_event() into a no-op, but that didn't work (I suspect figure resizing happens earlier with the event merely emitted as an afterthought). Thoughts? Ben Root On Sat, Oct 18, 2014 at 3:42 PM, Thomas Caswell <tca...@gm...> wrote: > I would guess that that would be very backend dependent and would > involve walking up the widget tree to find the QMainWindow (in qt > speak) and grabbing it's RGBA buffer. > > Tom > > On Sat, Oct 18, 2014 at 3:36 PM, Benjamin Root <ben...@ou...> wrote: > > I am *this* close to completing an "interactive session recorder" example > > for my book using the animation framework (yeah, you read that right...). > > However, since it is based on the usual savefig() action, you don't see > the > > buttons or the coordinate display in the corner. Is there a way to save > > frames of the entire canvas? It doesn't have to use savefig(). > > > > 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://p.sf.net/sfu/Zoho > > _______________________________________________ > > Matplotlib-devel mailing list > > Mat...@li... > > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > > > > > > -- > Thomas Caswell > tca...@gm... > |
From: Thomas C. <tca...@gm...> - 2014-10-18 19:42:11
|
I would guess that that would be very backend dependent and would involve walking up the widget tree to find the QMainWindow (in qt speak) and grabbing it's RGBA buffer. Tom On Sat, Oct 18, 2014 at 3:36 PM, Benjamin Root <ben...@ou...> wrote: > I am *this* close to completing an "interactive session recorder" example > for my book using the animation framework (yeah, you read that right...). > However, since it is based on the usual savefig() action, you don't see the > buttons or the coordinate display in the corner. Is there a way to save > frames of the entire canvas? It doesn't have to use savefig(). > > 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://p.sf.net/sfu/Zoho > _______________________________________________ > Matplotlib-devel mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > -- Thomas Caswell tca...@gm... |
From: Benjamin R. <ben...@ou...> - 2014-10-18 19:37:09
|
I am *this* close to completing an "interactive session recorder" example for my book using the animation framework (yeah, you read that right...). However, since it is based on the usual savefig() action, you don't see the buttons or the coordinate display in the corner. Is there a way to save frames of the entire canvas? It doesn't have to use savefig(). Cheers! Ben Root |
From: Thomas C. <tca...@gm...> - 2014-10-18 15:50:59
|
We should be a mentoring organization for next summer. The organization application period is coming up in a few months (http://www.google-melange.com/gsoc/events/google/gsoc2015), and if we are going to do this we need to have a list of viable projects for a summer student. I suspect that these will have to have a balance between importance (to justify doing it) and shiny-ness (to get students to _want_ to do it). Thing that comes to my mind immediately - work on implementing what ever comes out of https://github.com/matplotlib/matplotlib/issues/3424 - The laundry list of work on 3D plotting enhancements Tom -- Thomas Caswell tca...@gm... |
From: Thomas C. <tca...@gm...> - 2014-10-18 03:36:40
|
Does anyone on the list know the pass word (or control the recovery email address) for the matplotlib gmail account? I would like to set up google analytics on our web site to see a) how much traffic we get and b) where people are going. Tom -- Thomas Caswell tca...@gm... |
From: Pierre H. <pie...@cr...> - 2014-10-17 13:48:37
|
Hi, Le 17/10/2014 15:38, Thomas Caswell a écrit : > I have heard no complaints about the release candidate. Unless I hear > otherwise I plan to tag and release 1.4.1 tomorrow. I just got hit by https://github.com/matplotlib/matplotlib/issues/3553 today and I didn't see a definite feedback that the problem is fixed in 1.4.1rc1. Should I try to test it ? (as a side note: is there an easy way to build a conda package for 1.4.1 ?) best, Pierre |
From: Thomas C. <tca...@gm...> - 2014-10-17 13:39:04
|
I have heard no complaints about the release candidate. Unless I hear otherwise I plan to tag and release 1.4.1 tomorrow. Tom -- Thomas Caswell tca...@gm... |
From: Thomas C. <tca...@gm...> - 2014-10-16 14:02:50
|
Awesome, thanks! On Thu, Oct 16, 2014 at 8:14 AM, Sandro Tosi <mo...@de...> wrote: > Hi! > I just uploaded mpl 1.4.1-rc1 in Debian, so it can geta bit of > exposure even on the weird HW we still support. > > Cheers, > Sandro > > On Tue, Oct 14, 2014 at 5:40 PM, Thomas Caswell <tca...@gm...> wrote: >> I am happy to announce that I have tagged a release candidate for >> 1.4.1. This is a bug-fix release which fixes most of the bug that >> popped up in 1.4.0 including: >> >> - setup.py does not die when freetype is not installed >> - reverts the changes to interactive plotting so `ion` will work as expected >> - sundry unicode fixes (looking up user folders, importing >> seaborn/pandas/networkx with macosx backend >> - fixed boxplot regressions >> >> The tarball is available from github, sourceforge and can be install via >> >> pip install matplotlib==1.4.1rc1 >> >> Tom >> >> >> >> -- >> Thomas Caswell >> tca...@gm... >> >> ------------------------------------------------------------------------------ >> 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://p.sf.net/sfu/Zoho >> _______________________________________________ >> Matplotlib-devel mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > > > > -- > Sandro Tosi (aka morph, morpheus, matrixhasu) > My website: http://matrixhasu.altervista.org/ > Me at Debian: http://wiki.debian.org/SandroTosi -- Thomas Caswell tca...@gm... |
From: Sandro T. <mo...@de...> - 2014-10-16 12:14:39
|
Hi! I just uploaded mpl 1.4.1-rc1 in Debian, so it can geta bit of exposure even on the weird HW we still support. Cheers, Sandro On Tue, Oct 14, 2014 at 5:40 PM, Thomas Caswell <tca...@gm...> wrote: > I am happy to announce that I have tagged a release candidate for > 1.4.1. This is a bug-fix release which fixes most of the bug that > popped up in 1.4.0 including: > > - setup.py does not die when freetype is not installed > - reverts the changes to interactive plotting so `ion` will work as expected > - sundry unicode fixes (looking up user folders, importing > seaborn/pandas/networkx with macosx backend > - fixed boxplot regressions > > The tarball is available from github, sourceforge and can be install via > > pip install matplotlib==1.4.1rc1 > > Tom > > > > -- > Thomas Caswell > tca...@gm... > > ------------------------------------------------------------------------------ > 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://p.sf.net/sfu/Zoho > _______________________________________________ > Matplotlib-devel mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- Sandro Tosi (aka morph, morpheus, matrixhasu) My website: http://matrixhasu.altervista.org/ Me at Debian: http://wiki.debian.org/SandroTosi |
From: Benjamin R. <ben...@ou...> - 2014-10-15 13:39:29
|
Yes, please do. On Wed, Oct 15, 2014 at 4:55 AM, Pierre Haessig <pie...@cr...> wrote: > Hi, > Le 08/10/2014 15:04, Pierre Haessig a écrit : > > [...] > AttributeError: 'LogLocator' object has no attribute 'set_params' > [...] > > Should I put an issue on Github ? > > best, > Pierre > > > ------------------------------------------------------------------------------ > 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://p.sf.net/sfu/Zoho > _______________________________________________ > Matplotlib-devel mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > > |
From: Pierre H. <pie...@cr...> - 2014-10-15 08:56:05
|
Hi, Le 08/10/2014 15:04, Pierre Haessig a écrit : > [...] > AttributeError: 'LogLocator' object has no attribute 'set_params' > [...] Should I put an issue on Github ? best, Pierre |
From: Thomas C. <tca...@gm...> - 2014-10-14 16:40:41
|
I am happy to announce that I have tagged a release candidate for 1.4.1. This is a bug-fix release which fixes most of the bug that popped up in 1.4.0 including: - setup.py does not die when freetype is not installed - reverts the changes to interactive plotting so `ion` will work as expected - sundry unicode fixes (looking up user folders, importing seaborn/pandas/networkx with macosx backend - fixed boxplot regressions The tarball is available from github, sourceforge and can be install via pip install matplotlib==1.4.1rc1 Tom -- Thomas Caswell tca...@gm... |
From: Thomas C. <tca...@gm...> - 2014-10-14 03:02:44
|
Can someone please review 3564? https://github.com/matplotlib/matplotlib/pull/3564 It fixes the fact that there were ways to get values into rcparams that side-stepped all of the validation code which lead to some very long standing bugs. It raises warnings in the case of values that now fail validation, but used to sneak in. The plan is to change the warnings to exceptions at a later date. Tom -- Thomas Caswell tca...@gm... |
From: Andy D. <An...@Sa...> - 2014-10-12 21:00:35
|
Many thanks Ben and Thomas, the following worked! I think the problem was when I cloned the repo and download the source the first time I was not getting the correct version Andy wget https://github.com/matplotlib/matplotlib/archive/master.tar.gz tar -zxvf master.tar.gz cd matplotlib-master/ yum install freetype-devel yum install libpng-devel python2.7 setup.py build python2.7 setup.py install From: Benjamin Root <ben...@ou...> Date: Sunday, October 12, 2014 at 1:06 PM To: Thomas Caswell <tca...@gm...> Cc: Andrew Davidson <An...@Sa...>, matplotlib development list <mat...@li...> Subject: Re: [matplotlib-devel] trouble building on red hat. > Also, make sure that you don't have conflicting installs of packages all over > the place. Be sure to remove the build/ and dist/ directories if you have a > failed build before trying again. > > Also, it shouldn't be much of an issue that there are multiple pythons in the > same system, as python tends to do a good job keeping such things separate for > you. Just make sure you are using python2.7 and pip2.7 commands for the entire > software stack. > > Cheers! > Ben Root > > > On Sun, Oct 12, 2014 at 3:33 PM, Thomas Caswell <tca...@gm...> wrote: >> >> I think this is a bug that had been fixed on both master and 1.4.x. >> >> If I recall correctly this is an issue with free type (#3471 fixes it). The >> other work around is to install freetype-dev. >> >> Tom >> >> (From phone so chasing siren details is hard) >> >> On Oct 12, 2014 3:16 PM, "Andy Davidson" <An...@sa...> >> wrote: >>> I am having a heck of time getting matplotlib installed on my amazon ec2 >>> cluster. (I am new to python) >>> >>> >>> >>> I wonder if the problem is /usr/python points to an old version of python. I >>> need to use /usr/bin/python2.7 >>> >>> >>> >>> I have tried using yum, yum-builddep, pip2.7, downloading the the source , >>> and even cloning the master >>> >>> >>> >>> Yum see to know about /usr/bin/python which is an old version I need to use >>> /usr/bin/python2.7. >>> >>> >>> >>> I tried searching for a RPM >>> (http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/python-matplotlib) >>> how ever I only found really old version. >>> >>> >>> >>> >>> >>> I have tried editing File "setupext.py", line 940, in check, looks like the >>> min version is 2.4 I have 2.3.x >>> >>> >>> >>> But still can not figure out what the problem is >>> >>> >>> >>> Any suggestions would be greatly appreciated. >>> >>> >>> >>> Andy >>> >>> >>> >>> root@ip-172-31-17-158 matplotlib-1.4.0]$ pip2.7 install matplotlib >>> >>> Downloading/unpacking matplotlib >>> >>> Downloading matplotlib-1.4.0.tar.gz (51.2MB): 51.2MB downloaded >>> >>> Running setup.py (path:/tmp/pip_build_root/matplotlib/setup.py) egg_info >>> for package matplotlib >>> >>> >>> ============================================================================ >>> >>> Edit setup.cfg to change the build options >>> >>> >>> >>> BUILDING MATPLOTLIB >>> >>> matplotlib: yes [1.4.0] >>> >>> python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) >>> [GCC >>> >>> 4.8.2 20140120 (Red Hat 4.8.2-16)]] >>> >>> platform: yes [linux2] >>> >>> >>> >>> REQUIRED DEPENDENCIES AND EXTENSIONS >>> >>> numpy: yes [version 1.9.0] >>> >>> six: yes [using six version 1.8.0] >>> >>> dateutil: yes [using dateutil version 2.2] >>> >>> tornado: yes [using tornado version 4.0.2] >>> >>> pyparsing: yes [using pyparsing version 2.0.3] >>> >>> pycxx: yes [Couldn't import. Using local copy.] >>> >>> libagg: yes [pkg-config information for 'libagg' could >>> not >>> >>> be found. Using local copy.] >>> >>> Traceback (most recent call last): >>> >>> File "<string>", line 17, in <module> >>> >>> File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> >>> >>> result = package.check() >>> >>> File "setupext.py", line 940, in check >>> >>> if 'No such file or directory\ngrep:' in version: >>> >>> TypeError: argument of type 'NoneType' is not iterable >>> >>> Complete output from command python setup.py egg_info: >>> >>> >>> ============================================================================ >>> >>> >>> >>> Edit setup.cfg to change the build options >>> >>> >>> >>> >>> >>> >>> >>> BUILDING MATPLOTLIB >>> >>> >>> >>> matplotlib: yes [1.4.0] >>> >>> >>> >>> python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) [GCC >>> >>> >>> >>> 4.8.2 20140120 (Red Hat 4.8.2-16)]] >>> >>> >>> >>> platform: yes [linux2] >>> >>> >>> >>> >>> >>> >>> >>> REQUIRED DEPENDENCIES AND EXTENSIONS >>> >>> >>> >>> numpy: yes [version 1.9.0] >>> >>> >>> >>> six: yes [using six version 1.8.0] >>> >>> >>> >>> dateutil: yes [using dateutil version 2.2] >>> >>> >>> >>> tornado: yes [using tornado version 4.0.2] >>> >>> >>> >>> pyparsing: yes [using pyparsing version 2.0.3] >>> >>> >>> >>> pycxx: yes [Couldn't import. Using local copy.] >>> >>> >>> >>> libagg: yes [pkg-config information for 'libagg' could not >>> >>> >>> >>> be found. Using local copy.] >>> >>> >>> >>> Traceback (most recent call last): >>> >>> >>> >>> File "<string>", line 17, in <module> >>> >>> >>> >>> File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> >>> >>> >>> >>> result = package.check() >>> >>> >>> >>> File "setupext.py", line 940, in check >>> >>> >>> >>> if 'No such file or directory\ngrep:' in version: >>> >>> >>> >>> TypeError: argument of type 'NoneType' is not iterable >>> >>> >>> >>> ---------------------------------------- >>> >>> Cleaning up... >>> >>> Command python setup.py egg_info failed with error code 1 in >>> /tmp/pip_build_root/matplotlib >>> >>> Storing debug log for failure in /root/.pip/pip.log >>> >>> root@ip-172-31-17-158 matplotlib-1.4.0]$ >>> >>> >>> >>> >>> >>> This is the bottom of the debug log >>> >>> >>> >>> --------------------------------------- >>> >>> Cleaning up... >>> >>> Removing temporary dir /tmp/pip_build_root... >>> >>> Command python setup.py egg_info failed with error code 1 in >>> /tmp/pip_build_root/matplotlib >>> >>> Exception information: >>> >>> Traceback (most recent call last): >>> >>> File >>> "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py", >>> line 122, in main >>> >>> status = self.run(options, args) >>> >>> File >>> "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/commands/install.p >>> y", line 278, in run >>> >>> requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, >>> bundle=self.bundle) >>> >>> File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", >>> line 1229, in prepare_files >>> >>> req_to_install.run_egg_info() >>> >>> File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", >>> line 325, in run_egg_info >>> >>> command_desc='python setup.py egg_info') >>> >>> File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/util.py", >>> line 697, in call_subprocess >>> >>> % (command_desc, proc.returncode, cwd)) >>> >>> InstallationError: Command python setup.py egg_info failed with error code 1 >>> in /tmp/pip_build_root/matplotlib >>> >>> root@ip-172-31-17-158 matplotlib-1.4.0]$ >>> >>> >>> >>> >>> ---------------------------------------------------------------------------- >>> -- >>> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >>> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports >>> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >>> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >>> http://p.sf.net/sfu/Zoho >>> _______________________________________________ >>> Matplotlib-devel mailing list >>> Mat...@li... >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel >>> >> >> ----------------------------------------------------------------------------->> - >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >> http://p.sf.net/sfu/Zoho >> _______________________________________________ >> Matplotlib-devel mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel >> > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI > DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you > Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS > 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://p.sf.net/sfu/Zoho_______________________________________________ > Matplotlib-devel mailing list Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel |
From: Benjamin R. <ben...@ou...> - 2014-10-12 20:06:44
|
Also, make sure that you don't have conflicting installs of packages all over the place. Be sure to remove the build/ and dist/ directories if you have a failed build before trying again. Also, it shouldn't be much of an issue that there are multiple pythons in the same system, as python tends to do a good job keeping such things separate for you. Just make sure you are using python2.7 and pip2.7 commands for the entire software stack. Cheers! Ben Root On Sun, Oct 12, 2014 at 3:33 PM, Thomas Caswell <tca...@gm...> wrote: > I think this is a bug that had been fixed on both master and 1.4.x. > > If I recall correctly this is an issue with free type (#3471 fixes it). > The other work around is to install freetype-dev. > > Tom > > (From phone so chasing siren details is hard) > On Oct 12, 2014 3:16 PM, "Andy Davidson" <An...@sa...> > wrote: > >> I am having a heck of time getting matplotlib installed on my amazon ec2 >> cluster. (I am new to python) >> >> >> I wonder if the problem is /usr/python points to an old version of >> python. I need to use /usr/bin/python2.7 >> >> >> I have tried using yum, yum-builddep, pip2.7, downloading the the source >> , and even cloning the master >> >> >> Yum see to know about /usr/bin/python which is an old version I need to >> use /usr/bin/python2.7. >> >> >> I tried searching for a RPM ( >> http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/python-matplotlib) >> how ever I only found really old version. >> >> >> >> I have tried editing File "setupext.py", line 940, in check, looks like >> the min version is 2.4 I have 2.3.x >> >> >> But still can not figure out what the problem is >> >> >> Any suggestions would be greatly appreciated. >> >> >> Andy >> >> >> root@ip-172-31-17-158 matplotlib-1.4.0]$ pip2.7 install matplotlib >> >> Downloading/unpacking matplotlib >> >> Downloading matplotlib-1.4.0.tar.gz (51.2MB): 51.2MB downloaded >> >> Running setup.py (path:/tmp/pip_build_root/matplotlib/setup.py) >> egg_info for package matplotlib >> >> >> ============================================================================ >> >> Edit setup.cfg to change the build options >> >> >> >> BUILDING MATPLOTLIB >> >> matplotlib: yes [1.4.0] >> >> python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) >> [GCC >> >> 4.8.2 20140120 (Red Hat 4.8.2-16)]] >> >> platform: yes [linux2] >> >> >> >> REQUIRED DEPENDENCIES AND EXTENSIONS >> >> numpy: yes [version 1.9.0] >> >> six: yes [using six version 1.8.0] >> >> dateutil: yes [using dateutil version 2.2] >> >> tornado: yes [using tornado version 4.0.2] >> >> pyparsing: yes [using pyparsing version 2.0.3] >> >> pycxx: yes [Couldn't import. Using local copy.] >> >> libagg: yes [pkg-config information for 'libagg' >> could not >> >> be found. Using local copy.] >> >> Traceback (most recent call last): >> >> File "<string>", line 17, in <module> >> >> File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in >> <module> >> >> result = package.check() >> >> File "setupext.py", line 940, in check >> >> if 'No such file or directory\ngrep:' in version: >> >> TypeError: argument of type 'NoneType' is not iterable >> >> Complete output from command python setup.py egg_info: >> >> >> ============================================================================ >> >> >> Edit setup.cfg to change the build options >> >> >> >> >> BUILDING MATPLOTLIB >> >> >> matplotlib: yes [1.4.0] >> >> >> python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) [GCC >> >> >> 4.8.2 20140120 (Red Hat 4.8.2-16)]] >> >> >> platform: yes [linux2] >> >> >> >> >> REQUIRED DEPENDENCIES AND EXTENSIONS >> >> >> numpy: yes [version 1.9.0] >> >> >> six: yes [using six version 1.8.0] >> >> >> dateutil: yes [using dateutil version 2.2] >> >> >> tornado: yes [using tornado version 4.0.2] >> >> >> pyparsing: yes [using pyparsing version 2.0.3] >> >> >> pycxx: yes [Couldn't import. Using local copy.] >> >> >> libagg: yes [pkg-config information for 'libagg' could not >> >> >> be found. Using local copy.] >> >> >> Traceback (most recent call last): >> >> >> File "<string>", line 17, in <module> >> >> >> File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> >> >> >> result = package.check() >> >> >> File "setupext.py", line 940, in check >> >> >> if 'No such file or directory\ngrep:' in version: >> >> >> TypeError: argument of type 'NoneType' is not iterable >> >> >> ---------------------------------------- >> >> Cleaning up... >> >> Command python setup.py egg_info failed with error code 1 in >> /tmp/pip_build_root/matplotlib >> >> Storing debug log for failure in /root/.pip/pip.log >> >> root@ip-172-31-17-158 matplotlib-1.4.0]$ >> >> >> >> This is the bottom of the debug log >> >> >> --------------------------------------- >> >> Cleaning up... >> >> Removing temporary dir /tmp/pip_build_root... >> >> Command python setup.py egg_info failed with error code 1 in >> /tmp/pip_build_root/matplotlib >> >> Exception information: >> >> Traceback (most recent call last): >> >> File >> "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py", >> line 122, in main >> >> status = self.run(options, args) >> >> File >> "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/commands/install.py", >> line 278, in run >> >> requirement_set.prepare_files(finder, >> force_root_egg_info=self.bundle, bundle=self.bundle) >> >> File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", >> line 1229, in prepare_files >> >> req_to_install.run_egg_info() >> >> File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", >> line 325, in run_egg_info >> >> command_desc='python setup.py egg_info') >> >> File >> "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/util.py", line >> 697, in call_subprocess >> >> % (command_desc, proc.returncode, cwd)) >> >> InstallationError: Command python setup.py egg_info failed with error >> code 1 in /tmp/pip_build_root/matplotlib >> >> root@ip-172-31-17-158 matplotlib-1.4.0]$ >> >> >> >> >> ------------------------------------------------------------------------------ >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >> http://p.sf.net/sfu/Zoho >> _______________________________________________ >> Matplotlib-devel mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel >> >> > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://p.sf.net/sfu/Zoho > _______________________________________________ > Matplotlib-devel mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > > |
From: Thomas C. <tca...@gm...> - 2014-10-12 19:33:57
|
I think this is a bug that had been fixed on both master and 1.4.x. If I recall correctly this is an issue with free type (#3471 fixes it). The other work around is to install freetype-dev. Tom (From phone so chasing siren details is hard) On Oct 12, 2014 3:16 PM, "Andy Davidson" <An...@sa...> wrote: > I am having a heck of time getting matplotlib installed on my amazon ec2 > cluster. (I am new to python) > > > I wonder if the problem is /usr/python points to an old version of python. > I need to use /usr/bin/python2.7 > > > I have tried using yum, yum-builddep, pip2.7, downloading the the source > , and even cloning the master > > > Yum see to know about /usr/bin/python which is an old version I need to > use /usr/bin/python2.7. > > > I tried searching for a RPM ( > http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/python-matplotlib) > how ever I only found really old version. > > > > I have tried editing File "setupext.py", line 940, in check, looks like > the min version is 2.4 I have 2.3.x > > > But still can not figure out what the problem is > > > Any suggestions would be greatly appreciated. > > > Andy > > > root@ip-172-31-17-158 matplotlib-1.4.0]$ pip2.7 install matplotlib > > Downloading/unpacking matplotlib > > Downloading matplotlib-1.4.0.tar.gz (51.2MB): 51.2MB downloaded > > Running setup.py (path:/tmp/pip_build_root/matplotlib/setup.py) egg_info > for package matplotlib > > > ============================================================================ > > Edit setup.cfg to change the build options > > > > BUILDING MATPLOTLIB > > matplotlib: yes [1.4.0] > > python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) > [GCC > > 4.8.2 20140120 (Red Hat 4.8.2-16)]] > > platform: yes [linux2] > > > > REQUIRED DEPENDENCIES AND EXTENSIONS > > numpy: yes [version 1.9.0] > > six: yes [using six version 1.8.0] > > dateutil: yes [using dateutil version 2.2] > > tornado: yes [using tornado version 4.0.2] > > pyparsing: yes [using pyparsing version 2.0.3] > > pycxx: yes [Couldn't import. Using local copy.] > > libagg: yes [pkg-config information for 'libagg' could > not > > be found. Using local copy.] > > Traceback (most recent call last): > > File "<string>", line 17, in <module> > > File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> > > result = package.check() > > File "setupext.py", line 940, in check > > if 'No such file or directory\ngrep:' in version: > > TypeError: argument of type 'NoneType' is not iterable > > Complete output from command python setup.py egg_info: > > > ============================================================================ > > > Edit setup.cfg to change the build options > > > > > BUILDING MATPLOTLIB > > > matplotlib: yes [1.4.0] > > > python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) [GCC > > > 4.8.2 20140120 (Red Hat 4.8.2-16)]] > > > platform: yes [linux2] > > > > > REQUIRED DEPENDENCIES AND EXTENSIONS > > > numpy: yes [version 1.9.0] > > > six: yes [using six version 1.8.0] > > > dateutil: yes [using dateutil version 2.2] > > > tornado: yes [using tornado version 4.0.2] > > > pyparsing: yes [using pyparsing version 2.0.3] > > > pycxx: yes [Couldn't import. Using local copy.] > > > libagg: yes [pkg-config information for 'libagg' could not > > > be found. Using local copy.] > > > Traceback (most recent call last): > > > File "<string>", line 17, in <module> > > > File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> > > > result = package.check() > > > File "setupext.py", line 940, in check > > > if 'No such file or directory\ngrep:' in version: > > > TypeError: argument of type 'NoneType' is not iterable > > > ---------------------------------------- > > Cleaning up... > > Command python setup.py egg_info failed with error code 1 in > /tmp/pip_build_root/matplotlib > > Storing debug log for failure in /root/.pip/pip.log > > root@ip-172-31-17-158 matplotlib-1.4.0]$ > > > > This is the bottom of the debug log > > > --------------------------------------- > > Cleaning up... > > Removing temporary dir /tmp/pip_build_root... > > Command python setup.py egg_info failed with error code 1 in > /tmp/pip_build_root/matplotlib > > Exception information: > > Traceback (most recent call last): > > File > "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py", > line 122, in main > > status = self.run(options, args) > > File > "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/commands/install.py", > line 278, in run > > requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, > bundle=self.bundle) > > File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", > line 1229, in prepare_files > > req_to_install.run_egg_info() > > File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", > line 325, in run_egg_info > > command_desc='python setup.py egg_info') > > File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/util.py", > line 697, in call_subprocess > > % (command_desc, proc.returncode, cwd)) > > InstallationError: Command python setup.py egg_info failed with error code > 1 in /tmp/pip_build_root/matplotlib > > root@ip-172-31-17-158 matplotlib-1.4.0]$ > > > > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://p.sf.net/sfu/Zoho > _______________________________________________ > Matplotlib-devel mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > > |
From: Andy D. <An...@Sa...> - 2014-10-12 19:15:27
|
I am having a heck of time getting matplotlib installed on my amazon ec2 cluster. (I am new to python) I wonder if the problem is /usr/python points to an old version of python. I need to use /usr/bin/python2.7 I have tried using yum, yum-builddep, pip2.7, downloading the the source , and even cloning the master Yum see to know about /usr/bin/python which is an old version I need to use /usr/bin/python2.7. I tried searching for a RPM (http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/python-matplotlib) how ever I only found really old version. I have tried editing File "setupext.py", line 940, in check, looks like the min version is 2.4 I have 2.3.x But still can not figure out what the problem is Any suggestions would be greatly appreciated. Andy root@ip-172-31-17-158 matplotlib-1.4.0]$ pip2.7 install matplotlib Downloading/unpacking matplotlib Downloading matplotlib-1.4.0.tar.gz (51.2MB): 51.2MB downloaded Running setup.py (path:/tmp/pip_build_root/matplotlib/setup.py) egg_info for package matplotlib ============================================================================ Edit setup.cfg to change the build options BUILDING MATPLOTLIB matplotlib: yes [1.4.0] python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) [GCC 4.8.2 20140120 (Red Hat 4.8.2-16)]] platform: yes [linux2] REQUIRED DEPENDENCIES AND EXTENSIONS numpy: yes [version 1.9.0] six: yes [using six version 1.8.0] dateutil: yes [using dateutil version 2.2] tornado: yes [using tornado version 4.0.2] pyparsing: yes [using pyparsing version 2.0.3] pycxx: yes [Couldn't import. Using local copy.] libagg: yes [pkg-config information for 'libagg' could not be found. Using local copy.] Traceback (most recent call last): File "<string>", line 17, in <module> File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> result = package.check() File "setupext.py", line 940, in check if 'No such file or directory\ngrep:' in version: TypeError: argument of type 'NoneType' is not iterable Complete output from command python setup.py egg_info: ============================================================================ Edit setup.cfg to change the build options BUILDING MATPLOTLIB matplotlib: yes [1.4.0] python: yes [2.7.5 (default, Sep 15 2014, 17:30:20) [GCC 4.8.2 20140120 (Red Hat 4.8.2-16)]] platform: yes [linux2] REQUIRED DEPENDENCIES AND EXTENSIONS numpy: yes [version 1.9.0] six: yes [using six version 1.8.0] dateutil: yes [using dateutil version 2.2] tornado: yes [using tornado version 4.0.2] pyparsing: yes [using pyparsing version 2.0.3] pycxx: yes [Couldn't import. Using local copy.] libagg: yes [pkg-config information for 'libagg' could not be found. Using local copy.] Traceback (most recent call last): File "<string>", line 17, in <module> File "/tmp/pip_build_root/matplotlib/setup.py", line 154, in <module> result = package.check() File "setupext.py", line 940, in check if 'No such file or directory\ngrep:' in version: TypeError: argument of type 'NoneType' is not iterable ---------------------------------------- Cleaning up... Command python setup.py egg_info failed with error code 1 in /tmp/pip_build_root/matplotlib Storing debug log for failure in /root/.pip/pip.log root@ip-172-31-17-158 matplotlib-1.4.0]$ This is the bottom of the debug log --------------------------------------- Cleaning up... Removing temporary dir /tmp/pip_build_root... Command python setup.py egg_info failed with error code 1 in /tmp/pip_build_root/matplotlib Exception information: Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py", line 122, in main status = self.run(options, args) File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/commands/install.p y", line 278, in run requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle) File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", line 1229, in prepare_files req_to_install.run_egg_info() File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/req.py", line 325, in run_egg_info command_desc='python setup.py egg_info') File "/usr/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/util.py", line 697, in call_subprocess % (command_desc, proc.returncode, cwd)) InstallationError: Command python setup.py egg_info failed with error code 1 in /tmp/pip_build_root/matplotlib root@ip-172-31-17-158 matplotlib-1.4.0]$ |
From: Pierre H. <pie...@cr...> - 2014-10-08 13:04:36
|
Hello, I was wondering if the following behavior is a bug of LogLocator class or just a known limitation: (mpl 1.3.1) Input: plt_scale = 'log' #plt_scale = 'linear' fig, (ax1) = plt.subplots(1, 1) ax1.set(yscale=plt_scale) # works for linear scale, not for log: ax1.axes.locator_params('y', nbins=5) Result: AttributeError Traceback (most recent call last) <ipython-input-74-3492af5f93c8> in <module>() 7 8 # works for linear scale, not for log: ----> 9 ax1.axes.locator_params('y', nbins=5) /home/pierre/anaconda/lib/python2.7/site-packages/matplotlib/axes.pyc in locator_params(self, axis, tight, **kwargs) 2305 self.xaxis.get_major_locator().set_params(**kwargs) 2306 if _y: -> 2307 self.yaxis.get_major_locator().set_params(**kwargs) 2308 self.autoscale_view(tight=tight, scalex=_x, scaley=_y) 2309 AttributeError: 'LogLocator' object has no attribute 'set_params' What I get from the traceback is that `locator_params` method forwards the locator attributes (in my case `nbins`) to the actual locator object via its `set_params` method. And this method is missing from LogLocator So my question is: shouldn't all Locator subclasses have a `set_params` method ? best, Pierre (set_params is indeed defined in MaxNLocatorhttps://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/ticker.py#L1297) |
From: Michael D. <md...@st...> - 2014-10-07 21:35:17
|
On 10/07/2014 05:13 PM, Eric Firing wrote: > I'm not sure what to do about > https://github.com/matplotlib/matplotlib/issues/3621 either. In > general, I think it is best to have strings like this left in their > native mode, not coerced to unicode, but that is contrary to the > strategy decided upon when "from __future__ import unicode_literals" was > adopted. I think it has a pretty easy fix -- just put `str()` around the version string. That will go back to bytes on 2.x and unicode on 3.x. > > Mike, what do you think--are other projects going to run into this > problem, triggered by a bug in LooseVersion? It's an unfortunate bug, but fortunately has a reasonable workaround. I think there are certain areas of matplotlib where the benefit of using `unicode_literals` outweighs the pain -- particularly in the text and math text handling, the PDF and SVG backends, and anything to do with fonts. It's actually fixed a lot of bugs for us. But, yes, there are the occasional dark corners in Python 2 like this. Mike > > Eric > > On 2014/10/07, 11:03 AM, Michael Droettboom wrote: >> Thanks for working on all of these. I just discovered another issue >> that really should be a blocker: >> >> https://github.com/matplotlib/matplotlib/issues/3622 >> >> Mike >> >> On 10/01/2014 11:58 PM, Thomas Caswell wrote: >>> Hello all, >>> >>> We are going to miss the deadline on 1.4.1 as there is 2-3 blocker issues: >>> >>> - #3470 / PR#3564 which started as issues with the macosx backend >>> and spiralled into discovering that we were only validating input to >>> rcparams about half of the time. >>> >>> - #3505 The changes to disable interactive mode when not at a repl. >>> It turns out a lot of people use it and we should un-break them. >>> >>> - #3517 which is related to non-ascii paths in font look up which >>> causes matplotlib to blow up on import. >>> >>> I am open to arguments that any of these should not be blockers. >>> >>> Tom >>> >> > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk > _______________________________________________ > Matplotlib-devel mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- Michael Droettboom Science Software Branch Space Telescope Science Institute http://www.droettboom.com |
From: Eric F. <ef...@ha...> - 2014-10-07 21:13:15
|
I'm not sure what to do about https://github.com/matplotlib/matplotlib/issues/3621 either. In general, I think it is best to have strings like this left in their native mode, not coerced to unicode, but that is contrary to the strategy decided upon when "from __future__ import unicode_literals" was adopted. Mike, what do you think--are other projects going to run into this problem, triggered by a bug in LooseVersion? Eric On 2014/10/07, 11:03 AM, Michael Droettboom wrote: > Thanks for working on all of these. I just discovered another issue > that really should be a blocker: > > https://github.com/matplotlib/matplotlib/issues/3622 > > Mike > > On 10/01/2014 11:58 PM, Thomas Caswell wrote: >> Hello all, >> >> We are going to miss the deadline on 1.4.1 as there is 2-3 blocker issues: >> >> - #3470 / PR#3564 which started as issues with the macosx backend >> and spiralled into discovering that we were only validating input to >> rcparams about half of the time. >> >> - #3505 The changes to disable interactive mode when not at a repl. >> It turns out a lot of people use it and we should un-break them. >> >> - #3517 which is related to non-ascii paths in font look up which >> causes matplotlib to blow up on import. >> >> I am open to arguments that any of these should not be blockers. >> >> Tom >> > > |
From: Michael D. <md...@st...> - 2014-10-07 21:04:01
|
Thanks for working on all of these. I just discovered another issue that really should be a blocker: https://github.com/matplotlib/matplotlib/issues/3622 Mike On 10/01/2014 11:58 PM, Thomas Caswell wrote: > Hello all, > > We are going to miss the deadline on 1.4.1 as there is 2-3 blocker issues: > > - #3470 / PR#3564 which started as issues with the macosx backend > and spiralled into discovering that we were only validating input to > rcparams about half of the time. > > - #3505 The changes to disable interactive mode when not at a repl. > It turns out a lot of people use it and we should un-break them. > > - #3517 which is related to non-ascii paths in font look up which > causes matplotlib to blow up on import. > > I am open to arguments that any of these should not be blockers. > > Tom > -- Michael Droettboom Science Software Branch Space Telescope Science Institute http://www.droettboom.com |
From: Thomas C. <tca...@gm...> - 2014-10-02 03:58:48
|
Hello all, We are going to miss the deadline on 1.4.1 as there is 2-3 blocker issues: - #3470 / PR#3564 which started as issues with the macosx backend and spiralled into discovering that we were only validating input to rcparams about half of the time. - #3505 The changes to disable interactive mode when not at a repl. It turns out a lot of people use it and we should un-break them. - #3517 which is related to non-ascii paths in font look up which causes matplotlib to blow up on import. I am open to arguments that any of these should not be blockers. Tom -- Thomas Caswell tca...@gm... |
From: Todd <tod...@gm...> - 2014-09-29 11:33:56
|
On Sun, Sep 28, 2014 at 7:52 PM, Eric Firing <ef...@ha...> wrote: > Regarding Matlab: it is justly popular for many reasons. It is > relatively easy to learn both by design and because of its consistent > high-quality documentation. Matplotlib's success has resulted in large > measure from its pyplot layer, which can shield learners and users from > mpl's complexity, which allows learners to build on their Matlab > knowledge, and which is particularly well suited to quick interactive > data exploration. The problem with the Matlab/pyplot approach is that > it doesn't scale well, so we see a chorus of advice along the lines of > "don't use pyplot except for subplots() and show(); use the nice, > explicit OO interface for everything else". But at present, this > doesn't work well, because the OO approach is not interactive enough, > and using the getters and setters is clumsy when typing at the > console--in demonstrating, teaching, learning, and exploring > interactively, every keystroke counts! > > Matlab is actually slowly trying to transition to an OO-style interface of their own. It has taken a LONG time, though. |
From: Nathaniel S. <nj...@po...> - 2014-09-28 23:41:25
|
n Sun, Sep 28, 2014 at 12:40 AM, Eric Firing <ef...@ha...> wrote: > One of the biggest causes of controversy in mpl, and of difficulty in > teaching and learning mpl, is the divide between pyplot and the rest of > the library. There are at least two aspects: > > 1) plt.title() versus ax.set_title(), etc; that is, all the clunky > getters and setters on the OO side. JDH used to note that they were a > side-effect of his C++ heritage, and that he probably wouldn't have used > them if he had had more Python experience when he started mpl. > > 2) For interactive use, such as in the ipython console, one really wants > pyplot's draw_if_interactive() functionality; one doesn't want to have > to type explicit plt.draw() commands. Worse, plt.draw() operates on the > current figure, which might not be the figure that one just updated with > "ax2.set_title('the other plot')". I'm not very familiar with matplotlib's guts, but as a user I agree 100%. I'm sure there are Reasons why 90% of pylot functions aren't simply: def foo(*args, **kwargs): return gca().foo(*args, **kwargs) but I have no idea what they are, so whenever I have to memorize two different APIs for doing the same thing it ends up feeling like a pointless waste of time. > I think that both of these speed bumps can be removed fairly easily, in > an entirely backwards-compatible way. > > The first is just a matter of propagating some shorter-form pyplot > function names back to Axes and Figure. This idea is mentioned at the > end of MEP 13, as an alternative to properties. I'd much rather write ax.xlim(...) than ax.xlim = .... The use of that many magical properties feels unpythonic to me (too much magic!), and pyplot.xlim() isn't going anywhere. So, it would still mean that everyone has to learn both the pyplot and the OO APIs separately. Learning 1 API is always going to be easier than learning two different APIs, no matter how fancy and polished you make the second one. > The second requires accepting some behavior in the Axes and Figure > classes that is conditional on the backend and the interactive state. I > think it would look *roughly* like this: > > Add a method to Figure: > > def draw_if_interactive(): > if not is_interactive: > return > if not isinstance(self.canvas, interactive_canvases): > return > self.canvas.draw() > > Append this method to suitable Figure methods such as suptitle(). > > Add a method to Axes: > > def draw_if_interactive(): > self.figure.draw_if_interactive() > > Append this method to suitable Axes methods--all those that execute > changes, or at least those with corresponding pyplot functions. In most scene-graphy frameworks, triggering redraws is simply not the job of the mutator; it's the job of the rendering system to observe the model for changes. (Using "observe" in the "observer pattern" sense.) In this approach, every time an artist changes you'd call some "note_change()" method, which would then propagate upwards. And then some top-level piece of logic (the canvas or backend, I guess?) would be responsible for deciding whether it wanted to respond to these changes. So... very similar to what you're proposing, though with different terminology :-). > Some additional logic (either a kwarg, or temporary manipulation of the > "interactive" flag, or of an Axes instance flag) would be needed to > block the drawing at intermediate stages--e.g., when boxplot is drawing > all its bits and pieces. Presumably this would be a context manager, 'with artist.hold_changes(): ...' -- Nathaniel J. Smith Postdoctoral researcher - Informatics - University of Edinburgh http://vorpus.org |