You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
(12) |
Sep
(12) |
Oct
(56) |
Nov
(65) |
Dec
(37) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(59) |
Feb
(78) |
Mar
(153) |
Apr
(205) |
May
(184) |
Jun
(123) |
Jul
(171) |
Aug
(156) |
Sep
(190) |
Oct
(120) |
Nov
(154) |
Dec
(223) |
2005 |
Jan
(184) |
Feb
(267) |
Mar
(214) |
Apr
(286) |
May
(320) |
Jun
(299) |
Jul
(348) |
Aug
(283) |
Sep
(355) |
Oct
(293) |
Nov
(232) |
Dec
(203) |
2006 |
Jan
(352) |
Feb
(358) |
Mar
(403) |
Apr
(313) |
May
(165) |
Jun
(281) |
Jul
(316) |
Aug
(228) |
Sep
(279) |
Oct
(243) |
Nov
(315) |
Dec
(345) |
2007 |
Jan
(260) |
Feb
(323) |
Mar
(340) |
Apr
(319) |
May
(290) |
Jun
(296) |
Jul
(221) |
Aug
(292) |
Sep
(242) |
Oct
(248) |
Nov
(242) |
Dec
(332) |
2008 |
Jan
(312) |
Feb
(359) |
Mar
(454) |
Apr
(287) |
May
(340) |
Jun
(450) |
Jul
(403) |
Aug
(324) |
Sep
(349) |
Oct
(385) |
Nov
(363) |
Dec
(437) |
2009 |
Jan
(500) |
Feb
(301) |
Mar
(409) |
Apr
(486) |
May
(545) |
Jun
(391) |
Jul
(518) |
Aug
(497) |
Sep
(492) |
Oct
(429) |
Nov
(357) |
Dec
(310) |
2010 |
Jan
(371) |
Feb
(657) |
Mar
(519) |
Apr
(432) |
May
(312) |
Jun
(416) |
Jul
(477) |
Aug
(386) |
Sep
(419) |
Oct
(435) |
Nov
(320) |
Dec
(202) |
2011 |
Jan
(321) |
Feb
(413) |
Mar
(299) |
Apr
(215) |
May
(284) |
Jun
(203) |
Jul
(207) |
Aug
(314) |
Sep
(321) |
Oct
(259) |
Nov
(347) |
Dec
(209) |
2012 |
Jan
(322) |
Feb
(414) |
Mar
(377) |
Apr
(179) |
May
(173) |
Jun
(234) |
Jul
(295) |
Aug
(239) |
Sep
(276) |
Oct
(355) |
Nov
(144) |
Dec
(108) |
2013 |
Jan
(170) |
Feb
(89) |
Mar
(204) |
Apr
(133) |
May
(142) |
Jun
(89) |
Jul
(160) |
Aug
(180) |
Sep
(69) |
Oct
(136) |
Nov
(83) |
Dec
(32) |
2014 |
Jan
(71) |
Feb
(90) |
Mar
(161) |
Apr
(117) |
May
(78) |
Jun
(94) |
Jul
(60) |
Aug
(83) |
Sep
(102) |
Oct
(132) |
Nov
(154) |
Dec
(96) |
2015 |
Jan
(45) |
Feb
(138) |
Mar
(176) |
Apr
(132) |
May
(119) |
Jun
(124) |
Jul
(77) |
Aug
(31) |
Sep
(34) |
Oct
(22) |
Nov
(23) |
Dec
(9) |
2016 |
Jan
(26) |
Feb
(17) |
Mar
(10) |
Apr
(8) |
May
(4) |
Jun
(8) |
Jul
(6) |
Aug
(5) |
Sep
(9) |
Oct
(4) |
Nov
|
Dec
|
2017 |
Jan
(5) |
Feb
(7) |
Mar
(1) |
Apr
(5) |
May
|
Jun
(3) |
Jul
(6) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Todd M. <jm...@st...> - 2004-04-26 18:47:49
|
On Mon, 2004-04-26 at 14:35, Gerry Wiener wrote: > Todd, > > I'm running on Debian linux. Here's the output from uname -a: > > Linux light 2.4.26-dqcd-smp #1 SMP Wed Apr 14 13:15:48 MDT 2004 i686 unknown > > Here's the output from ldd _tkagg.so: > > light:> ldd _tkagg.so > libpng.so.2 => /usr/lib/libpng.so.2 (0x40160000) > libstdc++.so.5 => /usr/local/gcc-3.2.2/lib/libstdc++.so.5 > (0x4018b000) > libfreetype.so.6 => /d2/gerry/local/lib/libfreetype.so.6 > (0x4023a000) > libm.so.6 => /lib/libm.so.6 (0x402b9000) > libgcc_s.so.1 => /usr/local/gcc-3.2.2/lib/libgcc_s.so.1 (0x402da000) > libc.so.6 => /lib/libc.so.6 (0x402e2000) > libz.so.1 => /usr/lib/libz.so.1 (0x403ff000) > /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) Here's mine from Red Hat 9 i386 Linux: backends$ ldd _tkagg.so libtk8.3.so => /usr/lib/libtk8.3.so (0x40003000) libtcl8.3.so => /usr/lib/libtcl8.3.so (0x400c1000) libpng12.so.0 => /usr/lib/libpng12.so.0 (0x4014b000) libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x4016e000) libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40221000) libz.so.1 => /usr/lib/libz.so.1 (0x40272000) libm.so.6 => /lib/tls/libm.so.6 (0x40294000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x402b6000) libpthread.so.0 => /lib/tls/libpthread.so.0 (0x402be000) libc.so.6 => /lib/tls/libc.so.6 (0x42000000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x402cc000) libdl.so.2 => /lib/libdl.so.2 (0x403ab000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) As JDH suggested, -L/usr/X11R6/lib -lX11 -lXaw sounds like a good idea. It's possible that Tk and Tcl will need something similar. Have you tried anything like this yet? Todd > > > Here's ld.so.conf: > > light:> more /etc/ld.so.conf > /usr/X11R6/lib/Xaw3d > /usr/lib/libc5-compat/Xaw3d > /usr/X11R6/lib > /usr/lib/libc5-compat > /lib/libc5-compat > /usr/local/lib > /usr/i486-linuxlibc1/lib > /opt/lib > > Thanks, > > Gerry > > Todd Miller wrote: > > >Hi Gerry, > > > >I'm not entirely sure how to trouble shoot this problem but I had a few > >questions: > > > >1. What platform are you running on? > > > >2. What does ldd _tkagg.so say? (cd to .../site-packges/matplotlib > >first) > > > >3. What's in your /etc/ld.so.conf file? > > > >Regards, > >Todd > > > > > >On Mon, 2004-04-26 at 11:38, Gerry Wiener wrote: > > > > > >>John, > >> > >>My libX11 seems to be in the right place: > >> > >>light:gerry> pwd > >>/usr/X11R6/lib > >>light:gerry> ls -l libX11.so > >>lrwxrwxrwx 1 root root 11 Mar 2 10:04 libX11.so -> > >>libX11.so.6 > >>light:gerry> ls -l libX11.so.6 > >>lrwxrwxrwx 1 root root 13 Mar 2 10:04 libX11.so.6 -> > >>libX11.so.6.2 > >>light:gerry> ls -l libX11.so.6.2 > >>-rw-r--r-- 1 root root 888580 Feb 16 02:38 libX11.so.6.2 > >>light:gerry> > >> > >>Thanks, > >> > >>--Gerry > >> > >> > >>John Hunter wrote: > >> > >> > >> > >>>>>>>>"Gerry" == Gerry Wiener <ge...@uc...> writes: > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>> Gerry> undefined symbol: XFreePixmap > >>> > >>>A quick google groups search revealed among others > >>> > >>>http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=mailman.1046790065.16698.python-list%40python.org&rnum=4&prev=/groups%3Fq%3Dundefined%2520symbol%253A%2520XFreePixmap%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26sa%3DN%26tab%3Dwg > >>> > >>>The solution appeared to be -L/usr/X11R6/lib -lX11 -lXaw for a > >>>standard linux install path. Is your X11 in a weird place; where is > >>>libX11.so? Todd, do you think we need to add X11 libs to the tk build > >>>flags? > >>> > >>> > > > >I dunno. I was thinking first we'd figure out how to fix the problem by > >hand, then figure out what to do systematically. > > > > > > > >>>JDH > >>> > >>> > >>> > >>> > >> > >>------------------------------------------------------- > >>This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek > >>For a limited time only, get FREE Ground shipping on all orders of $35 > >>or more. Hurry up and shop folks, this offer expires April 30th! > >>http://www.thinkgeek.com/freeshipping/?cpg=12297 > >>_______________________________________________ > >>Matplotlib-users mailing list > >>Mat...@li... > >>https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >> > >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek > For a limited time only, get FREE Ground shipping on all orders of $35 > or more. Hurry up and shop folks, this offer expires April 30th! > http://www.thinkgeek.com/freeshipping/?cpg=12297 > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Todd Miller <jm...@st...> |
From: John H. <jdh...@ac...> - 2004-04-26 18:46:25
|
>>>>> "Gerry" == Gerry Wiener <ge...@uc...> writes: Gerry> Here's the output from ldd _tkagg.so: That looks bizarre to me; on my system (RHL9) _tkagg.so links with libtk, libtcl, libX11 and others. You are not even linking with the Tcl/Tk libs. It might be worthwhile to do a clean build and post the build results. > cd /your/path/to/matplotlib_src > rm -rf build > python setup.py build >& build.out JDH |
From: Randy H. <he...@in...> - 2004-04-26 18:40:36
|
I'm admittedly being a bit lazy, but does matplotlib let me read in/manipulate jpeg images? I'd like to do some custom cropping and resizing. Thanks, Randy |
From: Gerry W. <ge...@uc...> - 2004-04-26 18:35:30
|
Todd, I'm running on Debian linux. Here's the output from uname -a: Linux light 2.4.26-dqcd-smp #1 SMP Wed Apr 14 13:15:48 MDT 2004 i686 unknown Here's the output from ldd _tkagg.so: light:> ldd _tkagg.so libpng.so.2 => /usr/lib/libpng.so.2 (0x40160000) libstdc++.so.5 => /usr/local/gcc-3.2.2/lib/libstdc++.so.5 (0x4018b000) libfreetype.so.6 => /d2/gerry/local/lib/libfreetype.so.6 (0x4023a000) libm.so.6 => /lib/libm.so.6 (0x402b9000) libgcc_s.so.1 => /usr/local/gcc-3.2.2/lib/libgcc_s.so.1 (0x402da000) libc.so.6 => /lib/libc.so.6 (0x402e2000) libz.so.1 => /usr/lib/libz.so.1 (0x403ff000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) Here's ld.so.conf: light:> more /etc/ld.so.conf /usr/X11R6/lib/Xaw3d /usr/lib/libc5-compat/Xaw3d /usr/X11R6/lib /usr/lib/libc5-compat /lib/libc5-compat /usr/local/lib /usr/i486-linuxlibc1/lib /opt/lib Thanks, Gerry Todd Miller wrote: >Hi Gerry, > >I'm not entirely sure how to trouble shoot this problem but I had a few >questions: > >1. What platform are you running on? > >2. What does ldd _tkagg.so say? (cd to .../site-packges/matplotlib >first) > >3. What's in your /etc/ld.so.conf file? > >Regards, >Todd > > >On Mon, 2004-04-26 at 11:38, Gerry Wiener wrote: > > >>John, >> >>My libX11 seems to be in the right place: >> >>light:gerry> pwd >>/usr/X11R6/lib >>light:gerry> ls -l libX11.so >>lrwxrwxrwx 1 root root 11 Mar 2 10:04 libX11.so -> >>libX11.so.6 >>light:gerry> ls -l libX11.so.6 >>lrwxrwxrwx 1 root root 13 Mar 2 10:04 libX11.so.6 -> >>libX11.so.6.2 >>light:gerry> ls -l libX11.so.6.2 >>-rw-r--r-- 1 root root 888580 Feb 16 02:38 libX11.so.6.2 >>light:gerry> >> >>Thanks, >> >>--Gerry >> >> >>John Hunter wrote: >> >> >> >>>>>>>>"Gerry" == Gerry Wiener <ge...@uc...> writes: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>> Gerry> undefined symbol: XFreePixmap >>> >>>A quick google groups search revealed among others >>> >>>http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=mailman.1046790065.16698.python-list%40python.org&rnum=4&prev=/groups%3Fq%3Dundefined%2520symbol%253A%2520XFreePixmap%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26sa%3DN%26tab%3Dwg >>> >>>The solution appeared to be -L/usr/X11R6/lib -lX11 -lXaw for a >>>standard linux install path. Is your X11 in a weird place; where is >>>libX11.so? Todd, do you think we need to add X11 libs to the tk build >>>flags? >>> >>> > >I dunno. I was thinking first we'd figure out how to fix the problem by >hand, then figure out what to do systematically. > > > >>>JDH >>> >>> >>> >>> >> >>------------------------------------------------------- >>This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek >>For a limited time only, get FREE Ground shipping on all orders of $35 >>or more. Hurry up and shop folks, this offer expires April 30th! >>http://www.thinkgeek.com/freeshipping/?cpg=12297 >>_______________________________________________ >>Matplotlib-users mailing list >>Mat...@li... >>https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> >> |
From: Todd M. <jm...@st...> - 2004-04-26 17:52:51
|
Hi Gerry, I'm not entirely sure how to trouble shoot this problem but I had a few questions: 1. What platform are you running on? 2. What does ldd _tkagg.so say? (cd to .../site-packges/matplotlib first) 3. What's in your /etc/ld.so.conf file? Regards, Todd On Mon, 2004-04-26 at 11:38, Gerry Wiener wrote: > John, > > My libX11 seems to be in the right place: > > light:gerry> pwd > /usr/X11R6/lib > light:gerry> ls -l libX11.so > lrwxrwxrwx 1 root root 11 Mar 2 10:04 libX11.so -> > libX11.so.6 > light:gerry> ls -l libX11.so.6 > lrwxrwxrwx 1 root root 13 Mar 2 10:04 libX11.so.6 -> > libX11.so.6.2 > light:gerry> ls -l libX11.so.6.2 > -rw-r--r-- 1 root root 888580 Feb 16 02:38 libX11.so.6.2 > light:gerry> > > Thanks, > > --Gerry > > > John Hunter wrote: > > >>>>>>"Gerry" == Gerry Wiener <ge...@uc...> writes: > >>>>>> > >>>>>> > > > > Gerry> undefined symbol: XFreePixmap > > > >A quick google groups search revealed among others > > > >http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=mailman.1046790065.16698.python-list%40python.org&rnum=4&prev=/groups%3Fq%3Dundefined%2520symbol%253A%2520XFreePixmap%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26sa%3DN%26tab%3Dwg > > > >The solution appeared to be -L/usr/X11R6/lib -lX11 -lXaw for a > >standard linux install path. Is your X11 in a weird place; where is > >libX11.so? Todd, do you think we need to add X11 libs to the tk build > >flags? I dunno. I was thinking first we'd figure out how to fix the problem by hand, then figure out what to do systematically. > > > >JDH > > > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek > For a limited time only, get FREE Ground shipping on all orders of $35 > or more. Hurry up and shop folks, this offer expires April 30th! > http://www.thinkgeek.com/freeshipping/?cpg=12297 > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Todd Miller <jm...@st...> |
From: John H. <jdh...@ac...> - 2004-04-26 16:45:41
|
>>>>> "H=E9ctor" =3D=3D H=E9ctor Villafuerte D <hec...@te...= m.gt> writes: H=E9ctor> Thanks John, everything works right now, except for fact H=E9ctor> that I need to "clear" it on every iteration ... and the H=E9ctor> line where I try to clear the previous figure H=E9ctor> ("ax.clear()") is giving me troubles. Thanks in advance! When you call subplot(1,1,1) it will return the previously defined one and not create a new one. This is useful in interactive mode if you want to switch between active subplots. Since all command work on the active axes, you need a way to switch between them. For repeatedly drawing figures in a loop, I recommend for tel in tels: figure(1) ...plot... close(1) rather than using clear. However, it does not appear from your traceback that clear is directly causing the problem. You are getting an overflow error on the call to log10(d) where d is the datalim distance. It might be useful to check your datum and vals ranges to make sure they are what you think they are and not some obscenely large number. What happens if you do converter =3D PyDatetimeConverter() e =3D [converter.epoch(thisd) for thisd in datum] print 'date range', min(e), max(e) print 'val range', min(vals), max(vals) before the call to plot_date? In any case, I think it better to return no ticks and warn rather than die, so I've changed the ld =3D log10(d) line in matplotlib.ticker.AutoLocator.get_locator to try: ld =3D log10(d) except OverflowError: print >> sys.stderr, 'AutoLocator illegal datalim range %= s; returning NullLocator'%d return NullLocator() You may want to try this after checking the above. Let me know how it goes. JDH |
From:
<hec...@te...> - 2004-04-26 15:56:09
|
John Hunter wrote: >>>>>>"H=E9ctor" =3D=3D H=E9ctor Villafuerte D <hec...@te...= m.gt> writes: >>>>>> =20 >>>>>> > > H=E9ctor> 720, in __init__ MultipleLocator.__init__(self, > H=E9ctor> base*SEC_PER_MIN) NameError: global name 'SEC_PER_MIN' is > H=E9ctor> not defined > >This is a bug in ticker that will be fixed in the next bugfix >release. If you want to fix it yourself now, edit >matplotlib/ticker.py and add SEC_PER_MIN to the list of things >imported from the dates module. Ie, > >from dates import EpochConverter, SEC_PER_HOUR, SEC_PER_DAY, SEC_PER_WEE= K, \ > SEC_PER_MIN > > =20 > Thanks John, everything works right now, except for fact that I need to "clear" it on=20 every iteration ... and the line where I try to clear the previous figure ("ax.clear()") is=20 giving me troubles. Thanks in advance! ###################################################################### ERROR ###################################################################### C:\Documents and Settings\villaf>python e:\src\python\ttp\ttp_plot.py 1083001763.0 : Mon Apr 26 09:49:23 2004 : ttp_plot start Traceback (most recent call last): File "e:\src\python\ttp\ttp_plot.py", line 58, in ? get_data('traffic', 'tmp_calls0', 3) File "e:\src\python\ttp\ttp_plot.py", line 39, in get_data plot_date(datum, vals, PyDatetimeConverter(), 'b-') File "C:\Python23\Lib\site-packages\matplotlib\matlab.py", line 1011,=20 in plot_date try: lines =3D gca().plot_date(*args, **kwargs) File "C:\Python23\Lib\site-packages\matplotlib\axes.py", line 1172, in=20 plot_date self.plot(e, y, fmt, **kwargs) File "C:\Python23\Lib\site-packages\matplotlib\axes.py", line 1156, in=20 plot self.xaxis.autoscale_view() File "C:\Python23\Lib\site-packages\matplotlib\axis.py", line 405, in=20 autoscale_view self._majorTicker.locator.autoscale() File "C:\Python23\lib\site-packages\matplotlib\ticker.py", line 567,=20 in autoscale self._locator =3D self.get_locator(d) File "C:\Python23\lib\site-packages\matplotlib\ticker.py", line 573,=20 in get_locator ld =3D log10(d) OverflowError: math range error ###################################################################### SCRIPT ###################################################################### import time, ConfigParser, MySQLdb import datetime import matplotlib matplotlib.use('Agg') from matplotlib.matlab import * from matplotlib.dates import PyDatetimeConverter, MONDAY from matplotlib.ticker import WeekdayLocator, DayLocator, DateFormatter config =3D ConfigParser.ConfigParser() config.readfp(open('e:\\src\\python\\ttp\\ttp.conf', 'r')) loc_host =3D config.get('DATABASE', 'loc_host') loc_user =3D config.get('DATABASE', 'loc_user') loc_passwd =3D config.get('DATABASE', 'loc_passwd') loc_db =3D config.get('DATABASE', 'loc_db') loc_db =3D MySQLdb.connect(host =3D loc_host, user =3D loc_user, passwd =3D= =20 loc_passwd, db =3D loc_db) cursor =3D loc_db.cursor() def get_data(db, table, dig): cursor.execute("DROP TABLE IF EXISTS %s.tmp" % (db)) cursor.execute("CREATE TABLE %s.tmp " "SELECT fecha, mid(tel,1,%d) as tel, sum(minutos) as=20 min FROM %s.%s GROUP BY 1,2" % (db,dig,db,table)) cursor.execute("SELECT DISTINCT tel FROM %s.tmp" % (db)) tels =3D cursor.fetchall() for tel in tels: cursor.execute("SELECT fecha, min FROM %s.tmp WHERE tel =3D '%s'"= =20 % (db,tel[0])) data =3D cursor.fetchall() datum =3D [datetime.datetime(int(q[0][0:4]), int(q[0][4:6]),=20 int(q[0][6:8]), 0, 0) for q in data] vals =3D [q[1] for q in data] ax =3D subplot(1,1,1) plot_date(datum, vals, PyDatetimeConverter(), 'b-') ax.xaxis.set_major_locator(WeekdayLocator(MONDAY)) ax.xaxis.set_major_formatter(DateFormatter('%b %d')) ax.xaxis.set_minor_locator(DayLocator()) ax.xaxis.autoscale_view() title('TEST') ylabel('test') labels =3D ax.get_xticklabels() set(labels, 'rotation', 'vertical') grid(True) savefig("c:\\tmp\\%s_%s" % (tel[0],table)) ax.clear() # --- main -- # if __name__ =3D=3D '__main__': print time.mktime(time.localtime()), ': \t', time.asctime(), ': \t',=20 'ttp_plot start' get_data('traffic', 'tmp_calls0', 3) print time.mktime(time.localtime()), ': \t', time.asctime(), ': \t',=20 'ttp_plot end' |
From: John H. <jdh...@ac...> - 2004-04-26 15:45:12
|
This is a bug fix release * fixed errorbar autoscale problem * fixed ticker bug for plots with constant value * fixed mathtext fontsize problem in interactive mode * fixed copy tick attribute bug * added calls to draw_if_interactive to axes, legend, and pcolor * fixed win32 registry font manager bug http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=82474&release_id=234033 Hope this one works better! JDH |
From: Gerry W. <ge...@uc...> - 2004-04-26 15:38:50
|
John, My libX11 seems to be in the right place: light:gerry> pwd /usr/X11R6/lib light:gerry> ls -l libX11.so lrwxrwxrwx 1 root root 11 Mar 2 10:04 libX11.so -> libX11.so.6 light:gerry> ls -l libX11.so.6 lrwxrwxrwx 1 root root 13 Mar 2 10:04 libX11.so.6 -> libX11.so.6.2 light:gerry> ls -l libX11.so.6.2 -rw-r--r-- 1 root root 888580 Feb 16 02:38 libX11.so.6.2 light:gerry> Thanks, --Gerry John Hunter wrote: >>>>>>"Gerry" == Gerry Wiener <ge...@uc...> writes: >>>>>> >>>>>> > > Gerry> undefined symbol: XFreePixmap > >A quick google groups search revealed among others > >http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=mailman.1046790065.16698.python-list%40python.org&rnum=4&prev=/groups%3Fq%3Dundefined%2520symbol%253A%2520XFreePixmap%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26sa%3DN%26tab%3Dwg > >The solution appeared to be -L/usr/X11R6/lib -lX11 -lXaw for a >standard linux install path. Is your X11 in a weird place; where is >libX11.so? Todd, do you think we need to add X11 libs to the tk build >flags? > >JDH > > |
From: John H. <jdh...@ac...> - 2004-04-26 15:21:47
|
>>>>> "Darren" == Darren Dale <dd...@co...> writes: Darren> Is this the standard model for thesis writing? If it is, I Darren> am jealous. In my case, I spent three years building an Darren> experiment which now requires 3 week spurts of around the Darren> clock work, with a lot of maintenance and writing of Darren> papers in between. I really prefer programming to playing Darren> video games. With programming you get to define your own Darren> puzzles and you have something useful when your done. I decided to learn python when my thesis was due. Productive procrastination is the best kind. JDH |
From: Darren D. <dd...@co...> - 2004-04-26 15:14:13
|
> Darren> During the uninstall, I > Darren> got a message that datetime.pyd (I wonder if I copied this > Darren> name down incorrectly, I'm sorry) was in use and could not > Darren> be deleted. > >This is bizarre since a matplotlib uninstall shouldn't be messing with >datetime.pyd. Are you sure you didn't accidentally click uninstall >for another package? I may have made a mistake here; I had to process a lot of new information this weekend. The impression I got was that datetime.pyd was hanging from an earlier process, not from the uninstall. > Darren> Thanks again for matplotlib. I am finishing grad school in > Darren> a few months. When I do, I would like to participate in > Darren> the development if I can be of help. > >What do you mean? The *best* time to develop matplotlib is with a >thesis defense looming. Otherwise you'll just find yourself cleaning >your house for the 3rd time and playing addictive video games to >distract yourself. Is this the standard model for thesis writing? If it is, I am jealous. In my case, I spent three years building an experiment which now requires 3 week spurts of around the clock work, with a lot of maintenance and writing of papers in between. I really prefer programming to playing video games. With programming you get to define your own puzzles and you have something useful when your done. Anyway, I'll start looking at the source code, maybe there is something I can get started on. Darren S. Dale dd...@co... PGP public key available |
From: John H. <jdh...@ac...> - 2004-04-26 14:55:34
|
>>>>> "Gary" == Gary Ruben <ga...@em...> writes: Gary> Just a little follow-up point. The normal axis autoscaling, Gary> with "plot(t, s, 'b-')" commented out, doesn't take account Gary> of the errorbar extrema. That is, the errorbars extend Gary> beyond the autoscaled window, whereas the window should be Gary> scaled to fully contain the errorbars. Hi Gary, it turns out there were two problems here, one trivial, one less so. The trivial problem was that we were not callling self.xaxis.autoscale_view() self.yaxis.autoscale_view() from Axes.errorbar. That's why you saw the effect of commenting and uncommenting the plot command. The deeper problem was that the errorbar caps are specified in points but the errorbars themselves are in data coords. All lines know how to transform themselves to display, but to properly autoscale the view lim we needed to know the cap dimensions in data coords. The fix was to modify axes.add_line to detect the case where the line data was not in data coords and then get the line extent in data coords by doing line coords -> display coords -> inverse data transform -> data coords. The short answer is it works now and will be included in the upcoming 0.53.1 bugfix release. JDH |
From: John H. <jdh...@ac...> - 2004-04-26 13:29:13
|
>>>>> "Gerry" == Gerry Wiener <ge...@uc...> writes: Gerry> undefined symbol: XFreePixmap A quick google groups search revealed among others http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=mailman.1046790065.16698.python-list%40python.org&rnum=4&prev=/groups%3Fq%3Dundefined%2520symbol%253A%2520XFreePixmap%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26sa%3DN%26tab%3Dwg The solution appeared to be -L/usr/X11R6/lib -lX11 -lXaw for a standard linux install path. Is your X11 in a weird place; where is libX11.so? Todd, do you think we need to add X11 libs to the tk build flags? JDH |
From: John H. <jdh...@ac...> - 2004-04-26 13:25:06
|
>>>>> "Darren" == Darren Dale <dd...@co...> writes: >> I tested this on windows with idle. Idle now respects >> matplotlibrc and loads TkAgg. However, at least on my system, >> there is still some idle bug because the Tk window launches and >> then freezes without displaying the figure Did you launch with idle -n? Todd, perhaps you can add a FAQ here. I updated the backends.html.template section with the summary posted earlier but this is getting damn close to a FAQ. Darren> Additionally, if I use the WX backend, the window launches Darren> but does not render the plot (the widgets are rendered.) I Darren> can close the window, but I dont recover the command line Darren> in IDLE. I exited all programs, and tried to uninstall Darren> matplotlib 0.53 to install 0.52. This is known bug on my TODO list; thanks for letting me know. Darren> During the uninstall, I Darren> got a message that datetime.pyd (I wonder if I copied this Darren> name down incorrectly, I'm sorry) was in use and could not Darren> be deleted. This is bizarre since a matplotlib uninstall shouldn't be messing with datetime.pyd. Are you sure you didn't accidentally click uninstall for another package? Darren> Thanks again for matplotlib. I am finishing grad school in Darren> a few months. When I do, I would like to participate in Darren> the development if I can be of help. What do you mean? The *best* time to develop matplotlib is with a thesis defense looming. Otherwise you'll just find yourself cleaning your house for the 3rd time and playing addictive video games to distract yourself. JDH |
From: John H. <jdh...@ac...> - 2004-04-26 13:21:19
|
>>>>> "Darren" == Darren Dale <dd...@co...> writes: Darren> It turns out that temporarily renaming conflicting dll Darren> that lives in the windows/system32 folder was the right Darren> thing to do. Renaming that dll to dll.off prevents it from Darren> being accessed and GTK works. Hi Darren, Glad you got something working. Darren> Now I just have to wait for the offending program to Darren> complain. Then, the dll that I renamed can be moved to the Darren> folder containing the .exe file. The final step is to Darren> contact the offending software company and complain about Darren> their 3rd party dll's in the system32 folder. It is hard to get the various gtk for win32 packages working together for this reason. Darren> The guy who takes care of the windows port of GTK tells me Darren> that these dll conflicts are very common. It might be Darren> worth discussing on the matplotlib windows quickstart Darren> section. It's in the FAQ http://matplotlib.sourceforge.net/faq.html#GTKPATH. I updated the quickstart instructions to provide a link to the FAQ in case people have trouble. JDH |
From: Darren D. <dd...@co...> - 2004-04-26 12:50:54
|
>One other note: I havent been able to install the GTK runtime environment. >I have been having a mess of dll conflicts with other files on my system >path. I havent seen any advice on the web that would solve this problem. >Can anyone point me in the right direction? The best advice I have seen is >to specify a GTK_PATH environment variable, which should be searched for >resources before defaulting to the PATH variable. I did this for both the >system and user, but I am still getting the same conflicts. This concerns >the quickstart advice for windows users on the matplotlib website. (One >site even suggested deleting the conflicting dll's from the path in order >to not block the GTK resources. Yikes.) It turns out that temporarily renaming conflicting dll that lives in the windows/system32 folder was the right thing to do. Renaming that dll to dll.off prevents it from being accessed and GTK works. Now I just have to wait for the offending program to complain. Then, the dll that I renamed can be moved to the folder containing the .exe file. The final step is to contact the offending software company and complain about their 3rd party dll's in the system32 folder. The guy who takes care of the windows port of GTK tells me that these dll conflicts are very common. It might be worth discussing on the matplotlib windows quickstart section. |
From: Darren D. <dd...@co...> - 2004-04-25 21:37:24
|
Thank you to the people who are working on this project. I am beginning the transition from Matlab to Python, so I was excited to find matplotlib. As John reported earllier: > I tested this on windows with idle. Idle now >respects matplotlibrc > and loads TkAgg. However, at least on my system, >there is still some > idle bug because the Tk window launches and then >freezes without > displaying the figure Additionally, if I use the WX backend, the window launches but does not render the plot (the widgets are rendered.) I can close the window, but I dont recover the command line in IDLE. I exited all programs, and tried to uninstall matplotlib 0.53 to install 0.52. During the uninstall, I got a message that datetime.pyd (I wonder if I copied this name down incorrectly, I'm sorry) was in use and could not be deleted. One other note: I havent been able to install the GTK runtime environment. I have been having a mess of dll conflicts with other files on my system path. I havent seen any advice on the web that would solve this problem. Can anyone point me in the right direction? The best advice I have seen is to specify a GTK_PATH environment variable, which should be searched for resources before defaulting to the PATH variable. I did this for both the system and user, but I am still getting the same conflicts. This concerns the quickstart advice for windows users on the matplotlib website. (One site even suggested deleting the conflicting dll's from the path in order to not block the GTK resources. Yikes.) Thanks again for matplotlib. I am finishing grad school in a few months. When I do, I would like to participate in the development if I can be of help. Darren |
From: John H. <jdh...@ac...> - 2004-04-24 15:01:37
|
>>>>> "Flavio" == Flavio Codeco Coelho <fcc...@fi...> writes: Flavio> John, The following example works ok with WXAgg (Hoorray!) Flavio> but the exponent 4 at the end of the expression does not Flavio> show up (with or without brackets). Yes, there is a bug in the parser for over/under subscripts. I think I have the fix for it, but haven't been able get it done yet. Flavio> Also, an anoying thing is the need for spaces around TeX Flavio> markup. The same expression does not get formatted by Flavio> mathtext if you remove the spaces. This is going to Flavio> confuse TeX users since LaTeX doesn't need spaces. Yes, at the least a \/ symbol would be nice. Flavio> one last thing: after you close the WXAgg figure, the Flavio> execution does not return to the interpreter. This does Flavio> not happen on GTK. OK, thanks for letting me know. JDH |
From: John H. <jdh...@ac...> - 2004-04-24 14:14:56
|
>>>>> "Engelsma," == Engelsma, Dave <D.E...@La...> writes: Dave> Hello - I''ve got a wxDialog where, among other Dave> controls, I have a wxList and a Dave> FigureCanvasWx. Depending on what single item is Dave> selected in the wxList, the FigureCanvasWx should show Dave> the appropriate graph. It's important that the Dave> matplotlib-generated graph stay in the dialog along Dave> with the other controls (I don't want to generate a Dave> separate frame for the graph). I'm not a wx guru, so this may not be the best way, but it I think it is a pretty good way. Instead of putting a FigureCanvasWX in your, use a wxPanel instead. Maintain a list of FigureCanvasAgg and use them to draw your figures. Transfer these to the wxPanel using string and bitmap methods. This is effectively what wxagg does. The main difference is that you will have one canvas and a list of FigureCanvasAggs. You can get the width and height of the figure you need to draw with Suppose agg below is an FigureCanvasAgg instance agg.draw() s = agg.tostring_rgb() l,b,w,h = agg.figure.get_window_extent().get_bounds() image = wxEmptyImage( w,h ) image.SetData(s) bitmap = image.ConvertToBitmap() You can then transfer the bitmap to the wxpanel. If you want to do all the 'draw' calls upfront so you don't have to repeatedly draw if the user selects one figure, then another, then the original, that will be fine. Agg is a pretty fast renderer, which may more than make up for the performance hit of having to go through the string->bitmap->canvas. Let me know how it goes. JDH |
From: John H. <jdh...@ac...> - 2004-04-24 13:53:43
|
>>>>> "H=E9ctor" =3D=3D H=E9ctor Villafuerte D <hec...@te...= m.gt> writes: H=E9ctor> savefig("c:\\tmp\\%s_%s" % (tel,table)) File H=E9ctor> "C:\Python23\Lib\site-packages\matplotlib\matlab.py", line H=E9ctor> 1115, in savefig manager.canvas.print_figure(*args, H=E9ctor> **kwargs) File H=E9ctor> "C:\Python23\Lib\site-packages\matplotlib\backends\backend_= agg.py", H=E9ctor> line 419, in print_figure H=E9ctor> self.renderer._renderer.write_png(filename) IOError: could H=E9ctor> not open file This is a new one; I think the file is not writable and it is not a matplotlib problem per se. Is it possible that C:\\tmp does not exist? You may want to try something along the lines of import os ...snip... dirname =3D 'c:\\tmp' fname =3D os.path.join(dirname, '%s_%s' % (tel,table)) print 'dir exists', os.path.exists(dirname) print 'filename', fname file(fname, 'w').write('test\n') and see if you can see what is going wrong. JDH |
From: John H. <jdh...@ac...> - 2004-04-24 13:49:14
|
>>>>> "H=E9ctor" =3D=3D H=E9ctor Villafuerte D <hec...@te...= m.gt> writes: H=E9ctor> 720, in __init__ MultipleLocator.__init__(self, H=E9ctor> base*SEC_PER_MIN) NameError: global name 'SEC_PER_MIN' is H=E9ctor> not defined This is a bug in ticker that will be fixed in the next bugfix release. If you want to fix it yourself now, edit matplotlib/ticker.py and add SEC_PER_MIN to the list of things imported from the dates module. Ie, from dates import EpochConverter, SEC_PER_HOUR, SEC_PER_DAY, SEC_PER_WEEK= , \ SEC_PER_MIN |
From: Peter G. <pgr...@ge...> - 2004-04-24 01:48:07
|
The pcolor_demo.py and pcolor_demo2.py show somewhat different results: ------------ from matplotlib.matlab import * def fun3(x,y): return (1- x/2 + x**5 + y**3)*exp(-x**2-y**2) xi=arange(-3.0, 3.0, 0.05) yi=arange(-3.0, 3.0, 0.05) [Xi,Yi]=meshgrid(xi,yi); Zi=fun3(Xi,Yi) if 1: cMap = ColormapJet(256) imshow(Zi, cMap) gca().set_image_extent(-3, 3, -3, 3) else: pcolor(Xi, Yi, Zi, shading='flat') show() ------------- The y axis seem to be inverted on imshow when compared to pcolor. Was this intentional? |
From:
<hec...@te...> - 2004-04-23 21:34:46
|
I changed the script and I got this error Thanks for your help ######################################################################## NEW ERROR ######################################################################## C:\Documents and Settings\villaf>python e:\src\python\ttp\ttp_plot.py 1082763298.0 : Fri Apr 23 15:34:58 2004 : ttp_plot start Traceback (most recent call last): File "e:\src\python\ttp\ttp_plot.py", line 60, in ? get_data('traffic', 'tmp_calls0', 3) File "e:\src\python\ttp\ttp_plot.py", line 37, in get_data plotting_date(tel[0], datum, vals) File "e:\src\python\ttp\ttp_plot.py", line 54, in plotting_date savefig("c:\\tmp\\%s_%s" % (tel,table)) File "C:\Python23\Lib\site-packages\matplotlib\matlab.py", line 1115,=20 in savefig manager.canvas.print_figure(*args, **kwargs) File=20 "C:\Python23\Lib\site-packages\matplotlib\backends\backend_agg.py", line=20 419, in print_figure self.renderer._renderer.write_png(filename) IOError: could not open file ######################################################################## SCRIPT ######################################################################## import time, ConfigParser, MySQLdb import datetime import matplotlib matplotlib.use('Agg') from matplotlib.matlab import * from matplotlib.dates import PyDatetimeConverter, MONDAY from matplotlib.ticker import WeekdayLocator, DayLocator, DateFormatter config =3D ConfigParser.ConfigParser() config.readfp(open('e:\\src\\python\\ttp\\ttp.conf', 'r')) loc_host =3D config.get('DATABASE', 'loc_host') loc_user =3D config.get('DATABASE', 'loc_user') loc_passwd =3D config.get('DATABASE', 'loc_passwd') loc_db =3D config.get('DATABASE', 'loc_db') loc_db =3D MySQLdb.connect(host =3D loc_host, user =3D loc_user, passwd =3D= =20 loc_passwd, db =3D loc_db) cursor =3D loc_db.cursor() def get_data(db, table, dig): cursor.execute("DROP TABLE IF EXISTS %s.tmp" % (db)) cursor.execute("CREATE TABLE %s.tmp " "SELECT fecha, mid(tel,1,%d) as tel, sum(minutos) as=20 min FROM %s.%s GROUP BY 1,2" % (db,dig,db,table)) cursor.execute("SELECT DISTINCT tel FROM %s.tmp" % (db)) tels =3D cursor.fetchall() for tel in tels: cursor.execute("SELECT fecha, min FROM %s.tmp WHERE tel =3D '%s'"= =20 % (db,tel[0])) data =3D cursor.fetchall() datum =3D [datetime.datetime(int(q[0][0:4]), int(q[0][4:6]),=20 int(q[0][6:8]), 0, 0) for q in data] vals =3D [q[1] for q in data] plotting_date(tel[0], datum, vals) def plotting_date(tel, datum, vals): ax =3D subplot(1,1,1) plot_date(datum, vals, PyDatetimeConverter()) ax.xaxis.set_major_locator(WeekdayLocator(MONDAY)) ax.xaxis.set_major_formatter(DateFormatter('%b %d')) ax.xaxis.set_minor_locator(DayLocator()) ax.xaxis.autoscale_view() title('TEST') ylabel('test') labels =3D ax.get_xticklabels() set(labels, 'rotation', 'vertical') grid(True) savefig("c:\\tmp\\%s_%s" % (tel,table)) # --- main -- # if __name__ =3D=3D '__main__': print time.mktime(time.localtime()), ': \t', time.asctime(), ': \t',=20 'ttp_plot start' get_data('traffic', 'tmp_calls0', 3) print time.mktime(time.localtime()), ': \t', time.asctime(), ': \t',=20 'ttp_plot end' H=E9ctor Villafuerte D. wrote: > > hi all, > i'm getting the following error when running this script. > if the script doesn't iterate over "tels" it runs fine... > it seems to do things right just once. > thanks in advance, > hector > > > #######################################################################= ######### > ERROR > #######################################################################= ######### > > C:\Documents and Settings\villaf>python e:\src\python\ttp\ttp_plot.py > 1082751605.0 : Fri Apr 23 12:20:05 2004 : ttp_plot start > Traceback (most recent call last): > File "e:\src\python\ttp\ttp_plot.py", line 56, in ? > plotting_date('traffic', 'tmp_calls0', 3) > File "e:\src\python\ttp\ttp_plot.py", line 39, in plotting_date > plot_date(datum, vals, PyDatetimeConverter()) > File "C:\Python23\Lib\site-packages\matplotlib\matlab.py", line=20 > 1011, in plot_date > try: lines =3D gca().plot_date(*args, **kwargs) > File "C:\Python23\Lib\site-packages\matplotlib\axes.py", line 1198,=20 > in plot_date > locator =3D MinuteLocator(1) > File "C:\Python23\Lib\site-packages\matplotlib\ticker.py", line 720,=20 > in __init__ > MultipleLocator.__init__(self, base*SEC_PER_MIN) > NameError: global name 'SEC_PER_MIN' is not defined > > > #######################################################################= ######### > SCRIPT > #######################################################################= ######### > > import time, ConfigParser, MySQLdb > import datetime > import matplotlib > matplotlib.use('Agg') > from matplotlib.matlab import * > from matplotlib.dates import PyDatetimeConverter, MONDAY > from matplotlib.ticker import WeekdayLocator, DayLocator, DateFormatter > > config =3D ConfigParser.ConfigParser() > config.readfp(open('e:\\src\\python\\ttp\\ttp.conf', 'r')) > loc_host =3D config.get('DATABASE', 'loc_host') > loc_user =3D config.get('DATABASE', 'loc_user') > loc_passwd =3D config.get('DATABASE', 'loc_passwd') > loc_db =3D config.get('DATABASE', 'loc_db') > > loc_db =3D MySQLdb.connect(host =3D loc_host, user =3D loc_user, passwd= =3D=20 > loc_passwd, db =3D loc_db) > cursor =3D loc_db.cursor() > > def plotting_date(db, table, dig): > > cursor.execute("DROP TABLE IF EXISTS %s.tmp" % (db)) > cursor.execute("CREATE TABLE %s.tmp " > "SELECT fecha, mid(tel,1,%d) as tel, sum(minutos)=20 > as min FROM %s.%s GROUP BY 1,2" % (db,dig,db,table)) > cursor.execute("SELECT DISTINCT tel FROM %s.tmp" % (db)) > tels =3D cursor.fetchall() > for tel in tels: > cursor.execute("SELECT fecha, min FROM %s.tmp WHERE tel =3D=20 > '%s'" % (db,tel[0])) > data =3D cursor.fetchall() > datum =3D [datetime.datetime(int(q[0][0:4]), int(q[0][4:6]),=20 > int(q[0][6:8]), 0, 0) for q in data] > vals =3D [q[1] for q in data] > > ax =3D subplot(1,1,1) > plot_date(datum, vals, PyDatetimeConverter()) > > ax.xaxis.set_major_locator(WeekdayLocator(MONDAY)) > ax.xaxis.set_major_formatter(DateFormatter('%b %d')) > ax.xaxis.set_minor_locator(DayLocator()) > ax.xaxis.autoscale_view() > title('TEST') > ylabel('test') > labels =3D ax.get_xticklabels() > set(labels, 'rotation', 'vertical') > grid(True) > savefig("c:\\tmp\\%s_%s_test" % (tel[0],table)) > > > # --- main -- # > if __name__ =3D=3D '__main__': > print time.mktime(time.localtime()), ': \t', time.asctime(), ':=20 > \t', 'ttp_plot start' > plotting_date('traffic', 'tmp_calls0', 3) > print time.mktime(time.localtime()), ': \t', time.asctime(), ':=20 > \t', 'ttp_plot end' > > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek > For a limited time only, get FREE Ground shipping on all orders of $35 > or more. Hurry up and shop folks, this offer expires April 30th! > http://www.thinkgeek.com/freeshipping/?cpg=3D12297 > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > |
From: Peter G. <pgr...@ge...> - 2004-04-23 19:13:54
|
John Hunter wrote: >>>>>> "Peter" == Peter Groszkowski <pgr...@ge...> writes: >>>>>> >>>>> > > Peter> Hi: I attach a pcolor plot. I would like to get rid of the > Peter> areas outside the larger circle and inside the smaller > Peter> circle. Ideally I would like them to be white. Currently I > Peter> create my plot using pcolor and then plot *lots* of white > Peter> circles (for the inside) and lines (for the outside) on > Peter> top, to get rid of the unwanted areas. This works but I > Peter> wonder whether there is a better/faster solution. I would > Peter> imagine I could set the values corresponding to the > Peter> unwanted areas to some particular color before I call > Peter> pcolor, but the issue is that I want those ares to be white > Peter> (or other color not included in the standard palette which > Peter> is used for plotting the area inside the annulus). Can this > Peter> be done? > > Inside the circle is easy - just set the facecolor of the circle to be > white 'w', or whatever rgb tuple you want. How are you creating the > circles, with plot, scatter, or instantiating your own Circle > instances? > > I'm creating circles using the plot command, just transform my r and theta to x and y. It turned out that this is trivial using the fill command - one liner. I haven't used fill before but it seems very handy for this sort of thing. > Outside the circle requires implementing general clipping, which will > be done but I can't say how soon right now. > Again did it with fill - two lines. > What backend are you > using? The circles don't look antialiased so I'm guessing not agg. > agg and postscript are probably the best bets for getting general > clipping support first. > > > I have been using GD. You may remember a while ago, when I had some major performance issues (which turned out was because AA was on by default) you did a little analysis and concluded that GD is the fastest, even thought one needs to turn AA off. For most of my plotting, performance is crucial so I simply stuck with it. Another issue is the fact that Agg does not have a write-to-stream feature implemented. > Another question: is there a reason you are using pcolor rather than > imshow? imshow will give you the same result with interpolation and > dramatic performance benefits. Since you aren't using faceted shading > or otherwise tweaking the pcolor rectangles, you don't gain anything > by using pcolor unless you need a backend that doesn't support imshow > yet (gd?) > > Yes. Was using GD. Did some testing with Agg, and in the imshow plots do look quite nice. When write-to-stream feature gets added (or get around to adding it myself) will use imshow() instead of pcolor(). > Peter> Another question is in regards to showing tics in pcolor > Peter> plots. In my "legend" on the right, I would like them to be > Peter> visible, but they get overwritten. I suppose I could plot > Peter> each manually after I do pcolor; is it how this is meant to > Peter> be done? > > This is an easy fix. Basically you just need to move the axis drawing > to the end of the axes drawing code. Currently it is done before any > before any lines or patches are drawn. Try replacing > matplotlib.Axes._draw with the code below. > > > Yeah, this worked nice. > I'll make a deal: if you contribute some code to produce the nice > color legend you made, I'll try and implement general clipping! > > Well... to be honest, with your **magic** fill command I don't really need 'general clipping' and would prefer write-to-stream for Agg.. so I propose you implement whichever more people would find useful. The code is rather trivial, and works great in my case (specific fig dimensions and layout), but one would probably have to think about the details of having it as a part of the core library and work for general cases; some of the numbers when calling axes() might have to be adjusted. So an example might be: #!/usr/bin/python import sys, os from matplotlib.matlab import * from matplotlib.ticker import NullLocator figure(1, figsize=(6,5), facecolor='w', edgecolor='w', dpi=150) #This size woks best for me. mainAxes=axes([0.125, 0.05, 0.655, 0.83], frameon=0) xi=linspace(-4,4,200); yi=linspace(-4,4,200); [Xi,Yi]=meshgrid(xi,yi); Zi=fromfunction(lambda i,j: (i+j)%40, (200,200)) #Some dummy data pcolor(Xi, Yi, Zi, shading='flat') #Could use imshow() #Remove the x and y ticks. Is this how it's done in 0.53? mainAxes.xaxis.set_major_locator(NullLocator()) mainAxes.yaxis.set_major_locator(NullLocator()) legendAxes=axes([0.85, 0.05, 0.05, 0.83]) #Essentially want to make sure that the smallest/largest values on the legend correspond to the smallest/largest values in Zi yy=ravel(Zi) ymin,ymax=floor(min(yy)), ceil(max(yy)) dy=float(abs((ymax)-(ymin)))/256.0 x=arange(0,50) #When this is smaller, imshow() does not display the legend properly, but for pcolor could just do arange(0,2) y=arange(ymin,ymax,dy) Xi,Yi=meshgrid(x,y) pcolor(Xi, Yi, Yi, shading='flat') #Again could use imshow() legendAxes.xaxis.set_major_locator(NullLocator()) legendAxes.set_ylim([ymin,ymax]) show() -- Peter Groszkowski Gemini Observatory Tel: +1 808 974-2509 670 N. A'ohoku Place Fax: +1 808 935-9235 Hilo, Hawai'i 96720, USA |
From:
<hec...@te...> - 2004-04-23 18:28:39
|
hi all, i'm getting the following error when running this script. if the script doesn't iterate over "tels" it runs fine... it seems to do things right just once. thanks in advance, hector ################################################################################ ERROR ################################################################################ C:\Documents and Settings\villaf>python e:\src\python\ttp\ttp_plot.py 1082751605.0 : Fri Apr 23 12:20:05 2004 : ttp_plot start Traceback (most recent call last): File "e:\src\python\ttp\ttp_plot.py", line 56, in ? plotting_date('traffic', 'tmp_calls0', 3) File "e:\src\python\ttp\ttp_plot.py", line 39, in plotting_date plot_date(datum, vals, PyDatetimeConverter()) File "C:\Python23\Lib\site-packages\matplotlib\matlab.py", line 1011, in plot_date try: lines = gca().plot_date(*args, **kwargs) File "C:\Python23\Lib\site-packages\matplotlib\axes.py", line 1198, in plot_date locator = MinuteLocator(1) File "C:\Python23\Lib\site-packages\matplotlib\ticker.py", line 720, in __init__ MultipleLocator.__init__(self, base*SEC_PER_MIN) NameError: global name 'SEC_PER_MIN' is not defined ################################################################################ SCRIPT ################################################################################ import time, ConfigParser, MySQLdb import datetime import matplotlib matplotlib.use('Agg') from matplotlib.matlab import * from matplotlib.dates import PyDatetimeConverter, MONDAY from matplotlib.ticker import WeekdayLocator, DayLocator, DateFormatter config = ConfigParser.ConfigParser() config.readfp(open('e:\\src\\python\\ttp\\ttp.conf', 'r')) loc_host = config.get('DATABASE', 'loc_host') loc_user = config.get('DATABASE', 'loc_user') loc_passwd = config.get('DATABASE', 'loc_passwd') loc_db = config.get('DATABASE', 'loc_db') loc_db = MySQLdb.connect(host = loc_host, user = loc_user, passwd = loc_passwd, db = loc_db) cursor = loc_db.cursor() def plotting_date(db, table, dig): cursor.execute("DROP TABLE IF EXISTS %s.tmp" % (db)) cursor.execute("CREATE TABLE %s.tmp " "SELECT fecha, mid(tel,1,%d) as tel, sum(minutos) as min FROM %s.%s GROUP BY 1,2" % (db,dig,db,table)) cursor.execute("SELECT DISTINCT tel FROM %s.tmp" % (db)) tels = cursor.fetchall() for tel in tels: cursor.execute("SELECT fecha, min FROM %s.tmp WHERE tel = '%s'" % (db,tel[0])) data = cursor.fetchall() datum = [datetime.datetime(int(q[0][0:4]), int(q[0][4:6]), int(q[0][6:8]), 0, 0) for q in data] vals = [q[1] for q in data] ax = subplot(1,1,1) plot_date(datum, vals, PyDatetimeConverter()) ax.xaxis.set_major_locator(WeekdayLocator(MONDAY)) ax.xaxis.set_major_formatter(DateFormatter('%b %d')) ax.xaxis.set_minor_locator(DayLocator()) ax.xaxis.autoscale_view() title('TEST') ylabel('test') labels = ax.get_xticklabels() set(labels, 'rotation', 'vertical') grid(True) savefig("c:\\tmp\\%s_%s_test" % (tel[0],table)) # --- main -- # if __name__ == '__main__': print time.mktime(time.localtime()), ': \t', time.asctime(), ': \t', 'ttp_plot start' plotting_date('traffic', 'tmp_calls0', 3) print time.mktime(time.localtime()), ': \t', time.asctime(), ': \t', 'ttp_plot end' |