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
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
|
|
1
|
2
(1) |
3
(2) |
4
|
5
(4) |
6
(9) |
7
(5) |
8
(3) |
9
(3) |
10
(4) |
11
(1) |
12
(5) |
13
|
14
(2) |
15
|
16
(5) |
17
(2) |
18
|
19
(4) |
20
(1) |
21
(8) |
22
|
23
|
24
(1) |
25
(2) |
26
|
27
(3) |
28
|
29
|
30
|
|
|
|
|
|
|
John Hunter wrote: > > I can confirm that if the font files are installed in the default > > location under the system python tree, it works. Setting AFMPATH also > > works in linux. > > OK, so the font files exist and are readable. In order to figure out > where the problem is, I'll need you to add a couple of lines to > matplotlib/backends/backend_ps.py and tell me what the output is. In > the function _get_afm_filenames on line 413, add these print lines > before the return statement and let me know what they report > > print paths > print fnames > return fnames > > John Hunter H:00円work00円cvs\matplotlib\matplotlib\examples>python subplot_demo.py -dPS ['E:\\Py23\\share\\matplotlib', 'E', '\\Py23e\\share\\matplotlib'] [] Error: Could not find any AFM files; please set AFMPATH to point to some readable adobe font metric files Regards, ST --
> I can confirm that if the font files are installed in the default > location under the system python tree, it works. Setting AFMPATH also > works in linux. OK, so the font files exist and are readable. In order to figure out where the problem is, I'll need you to add a couple of lines to matplotlib/backends/backend_ps.py and tell me what the output is. In the function _get_afm_filenames on line 413, add these print lines before the return statement and let me know what they report print paths print fnames return fnames John Hunter
John Hunter wrote: > > LUK> Another question: I've set the environmental variable AFMPATH > LUK> in the registry via the control panel but matplotlib > LUK> complains that the .afm files are not there. > > I cannot replicate this problem on my system. Are the *.afm files in > E:\Py23e\share\matplotlib? Are you sure you are running the right > version of python, ie, do you still get the error with > > > E:\Py23e\python simple_plot.ps -dPS > [snipped] > > And let me know what it reports. If you are using the fonts that ship > with matplotlib, you shouldn't even need to set the AFMPATH because it > automatically looks in the share/matplotlib subdir of your python > install dir. I can confirm that if the font files are installed in the default location under the system python tree, it works. Setting AFMPATH also works in linux. > > You may also want to verify that matplotlib is finding your > environment variable by doing > > >>python >> >>>>import os >>>>print os.environ.has_key('AFMPATH') > >>> import os >>> os.environ["AFMPATH"] 'E:\\Py23e\\share\\matplotlib' > > If the *.afm fonts are in the share/matplotlib dir, and you are using > the right python, and the paths look correct from the diagnostic > information above, the only thing I can think of is that these files > are not readable by you (admin versus user thing?). To test this try > > >>python >> >>>>fh = file('E:\Py23e\\share\\matplotlib\\phvl8a.afm', 'r') >>>>s = fh.read() >>>>len(s) > >>> fh = file('E:\Py23e\\share\\matplotlib\\afm\\phvl8a.afm', 'r') >>> len(fh.read()) 15627 > > Let me know.... > JDH > Regards, ST --
>>>>> "Flavio" == Flavio C Coelho <fcc...@fi...> writes: Flavio> Hi John et al., I know that the development of a wx Flavio> backend is under way. Well under way in fact. Jeremy O'Donoghue sent me a version yesterday which I checked into CVS. It is still under active development, with several known bugs, but he has tested it across platforms with most of the example scripts. I'll post in the text of his email below which has more details. Flavio> But meanwhile, can any of the non GTK backends (PS and GD) Flavio> be used from within a wx app? Flavio> I suspect that the answer to this question is no because Flavio> the mere import of matplotlib.matlab from any wxpython Flavio> shell (like pycrust) will crash it. But I don't want to Flavio> assume that before I am certain of it. matplotlib should not crash pycrust (it doesn't on my system). This may be related to an improper GTK install on your system. In any case, you need to import the backend you plan to use before importing matplotlib.matlab. I just did the following from pycrust w/o problems import matplotlib matplotlib.use('PS') import os def psshow(): savefig('tmp.ps') os.system('ggv tmp.ps') close() from matplotlib.matlab import * plot([1,2,3]) psshow() t = arange(0.0, 1.0, 0.01) plot(t, sin(2*pi*t)) psshow() I also did the the same with GD module. Just replace 'PS' with GD and execute your favorite image viewer command. For either of these, though, You'll first need to comment out line 43 in _matlab_helpers.py, which reads 'figwin.window.destroy()'. I only discovered this bug when trying to answer your question. Now, on to WX. It is currently only working from pycrust and is under heavy development, but you are welcome to try it from CVS. Let me know if you need a win32 installer and I'll email one. Here is Jeremy's email: I thought I'd keep you up to date with my progress. Attached is the set of files for an early version of the wxWindows back-end. It seems to work with most of the examples on the website, and has been tested with wxPython 2.3.3 (on wxWindows 2.2.9) on Windows 2000 using Active State Python 2.2, and (less thoroughly) using wxWindows 2.4 under WxGTK with Python 2.3 on Debian GNU/Linux. The implementation is very similar to your GTK back-end (probably too similar, but I like re-using code which works :) This at least means that it should be pretty easy for you to follow what I've done. The code is probably only ready for very early users - if anyone is screaming for wxWindows, you may wish to put it into CVS, otherwise it may be better to wait for a while - say until I have the interactive functions working. I'll leave it to your judgement. Best regards Jeremy Known bugs: - Coloured text labels to not work correctly. I do not yet understand why not, and will need to look carefully at how wxWindows treats text, as I think the code I have is OK! - I currently do not perform any clipping, as this clips text labels. - Under Windows 2000, the Figure window is larger than the figure (seems OK on Linux, however) - Interactive sessions currently only work inside a Python console which already has a wxWindows event loop (I recommend PyCrust, which is distributed with wxPython) Not implemented: - Printing - Interactive operation using the toolbar (probably not a large job to do, as I suspect that I can simply re-use the functions from backend_gtk). Ugly hacks: - Dotted lines - I have a nasty hack to make this work sufficiently for demonstration purposes. The problem is that you currently implement dotted lines in a rather GTK-specific way. I'd prefer, given that there are only a few 'dotted' styles, for these to have symbolic names (e.g. in a dictionary), and to do all of the decisions on how to draw the 'dotted' style in the back-end. - As wxWindows has no 'stock' icons, I have converted GTK icons similar to those used in backend_gtk into XPM format and put them into an 'images' directory under backends. I'm open to your preference as to whether it would be better to put the images into python code or leave them as pixmaps.
Hi John et al., I know that the development of a wx backend is under way. But meanwhile, can any of the non GTK backends (PS and GD) be used from within a wx app? I suspect that the answer to this question is no because the mere import of matplotlib.matlab from any wxpython shell (like pycrust) will crash it. But I don't want to assume that before I am certain of it. do the PS & GD backend support the show() command? i.e., can they be easily displayed on the screen or are they geared towards saving and printing? thanks Fl=E1vio Coelho
>>>>> "LUK" == LUK ShunTim <shu...@po...> writes: LUK> I followed the link in the matplotlib site and installed gtk LUK> 2.2.4.1 from the sf site and the problem goes away. This LUK> version has all the images libraries with them. I must LUK> bookmark it! Good news ... LUK> Another question: I've set the environmental variable AFMPATH LUK> in the registry via the control panel but matplotlib LUK> complains that the .afm files are not there. I cannot replicate this problem on my system. Are the *.afm files in E:\Py23e\share\matplotlib? Are you sure you are running the right version of python, ie, do you still get the error with > E:\Py23e\python simple_plot.ps -dPS You might want to add a diagnostic debug line to backends/backend_ps.py to print the paths that it is searching. After line 422 in that file, insert a new line that prints the paths, eg, def _get_afm_filenames(self): paths = [os.path.join(distutils.sysconfig.PREFIX, 'share', 'matplotlib')] if os.environ.has_key('AFMPATH'): afmpath = os.environ['AFMPATH'] if afmpath.find(';')>0: #win32 style paths.extend(afmpath.split(';')) elif afmpath.find(':')>0: # unix style paths.extend(afmpath.split(':')) else: paths.append(afmpath) *** print paths fnames = [] And let me know what it reports. If you are using the fonts that ship with matplotlib, you shouldn't even need to set the AFMPATH because it automatically looks in the share/matplotlib subdir of your python install dir. You may also want to verify that matplotlib is finding your environment variable by doing > python >>> import os >>> print os.environ.has_key('AFMPATH') If the *.afm fonts are in the share/matplotlib dir, and you are using the right python, and the paths look correct from the diagnostic information above, the only thing I can think of is that these files are not readable by you (admin versus user thing?). To test this try > python >>> fh = file('E:\Py23e\\share\\matplotlib\\phvl8a.afm', 'r') >>> s = fh.read() >>> len(s) Let me know.... JDH
John Hunter wrote: >>>>>>"LUK" == LUK ShunTim <shu...@po...> writes: > > > LUK> Hello, When I tried out "python simple_plot.py" and tried to > LUK> save it as a png file, python crashes. No problem with saving > LUK> it to jpeg, though. > > I haven't seen that before. It works fine on my system (Windows ME) > and noone else has reported a win32 problem. The fact that it works > with jpeg and not png suggests a lib PNG problem. What version of > pygtk and GTK-Runtime are you using. If you are using pygtk-2.0.0 and > GTK-Runtime-2.2.4.1, then you should be OK. Have you installed an > earlier version of these libs, possibly creating a library conflict? > > When you search for libpng, what turns up? > > JDH > GTK 2.2.4 (Can't remember where I got it. There's been a few of these floating around.) Pygtk 2.0.0 from the link in matplotlib site. Somehow my GTK runtime don't have the png, jpeg etc images libraries and I got them from the gnuwin32 sf site. I followed the link in the matplotlib site and installed gtk 2.2.4.1 from the sf site and the problem goes away. This version has all the images libraries with them. I must bookmark it! Another question: I've set the environmental variable AFMPATH in the registry via the control panel but matplotlib complains that the .afm files are not there. <quote> H:00円work00円cvs\matplotlib\matplotlib\examples>python simple_plot.py -dPS Error: Could not find any AFM files; please set AFMPATH to point to some readable adobe font metric files H:00円work00円cvs\matplotlib\matplotlib\examples>echo %AFMPATH% E:\Py23e\share\matplotlib </quote> This is a W2K system. Thanks very much, ST --
>>>>> "LUK" == LUK ShunTim <shu...@po...> writes: LUK> Hello, When I tried out "python simple_plot.py" and tried to LUK> save it as a png file, python crashes. No problem with saving LUK> it to jpeg, though. I haven't seen that before. It works fine on my system (Windows ME) and noone else has reported a win32 problem. The fact that it works with jpeg and not png suggests a lib PNG problem. What version of pygtk and GTK-Runtime are you using. If you are using pygtk-2.0.0 and GTK-Runtime-2.2.4.1, then you should be OK. Have you installed an earlier version of these libs, possibly creating a library conflict? When you search for libpng, what turns up? JDH
Hello, When I tried out "python simple_plot.py" and tried to save it as a png file, python crashes. No problem with saving it to jpeg, though. My system: W2K SP4/Python2.3.2/matplotlib-0.31 Here's some traceback: <quote> python.exe caused an Access Violation at location 77f92373 in module ntdll.dll Writing to location 00000010. Registers: eax=00000000 ebx=00000000 ecx=00000000 edx=00000000 esi=7803a710 edi=00000000 eip=77f92373 esp=0012e83c ebp=0012e89c iopl=0 nv up ei pl nz na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000202 Call stack: 77F92373 ntdll.dll:77F92373 RtlpWaitForCriticalSection 77F922F8 ntdll.dll:77F922F8 RtlImageDirectoryEntryToData 03B5C06C libpng.dll:03B5C06C png_set_read_fn 01F5F480 00FA5192 libgdk_pixbuf-2.0-0.dll:00FA5192 gdk_pixbuf_new_from_xpm_data 00FA53FF libgdk_pixbuf-2.0-0.dll:00FA53FF gdk_pixbuf_savev 00E822DA _gtk.pyd:00E822DA init_gtk 1E0591AA python23.dll:1E0591AA PyCFunction_Call </quote> Regards, ST --
A slightly different approach to live plotting. I have a numerical program that calls a status function every run through the main loop. It allows the user to define a status function and pass it that function (defaulting to just a one-line report on sys.err). Using GTK idle slowed things down way too much, because GTK was always idle, even though the number cruncher wasn't. GTK timeout didn't work either. Using threads was too complicated and error prone, for no gain. What I wanted was a meter that updated every second or so. Here is my status function. It shows traces for the best score so far, and the current score. If enough time has elapsed, it plots (thus scheduling GTK events), otherwise no. So the gtk.events_pending() call near the end is usually false. It rescales the graph too, as required. You can ignore the "interrupted" stuff -- that allows me to send a "stop" signal to the numerical routine, saying "Ok, it looks to me like you've converged, stop now." -Charles ---------- def my_status_func(*args, **kwargs): """ Gather info from a running snob, and plot it. It expects the final arg to be a dictionary with the following keyword arguments: fig -- the matplot figure for drawing to ax -- the matplot axes in that figure t1 -- a list of length 1, with timestamp of last refresh iteratns -- sequence of all iteration #s to date (x axis) currlens -- sequence of all current lengths to date bestlens -- sequence of all best lenghts to date All of these kwargs will be modified, at least sometimes. """ #global currlens, bestlens, iteratns, t UPDATE_INTERVAL = 1 # how long in s to wait before updating graph itr = args[0] + 1 max_itr = args[1] cl = int (args[2][0] / N.log(2)) bl = int (args[3][0] / N.log(2)) #cl = int (curr[0] / N.log(2)) #bl = int (best[0] / N.log(2)) # Extract variables from kwargs t1 = kwargs['t1'] iteratns = kwargs['iteratns'] currlens = kwargs['currlens'] bestlens = kwargs['bestlens'] iteratns.append (itr) currlens.append (cl) bestlens.append (bl) if itr == 1: print "Original length: ", cl delta = time.time() - t1[0] if (itr > 1) and ( (delta > UPDATE_INTERVAL) or (itr >= max_itr) ): # matplot has trouble if we plot just a single data point # so we wait for itr > 1 # if not ShowOn().get(): # ShowOn().set(True) fig = kwargs['fig'] ax = kwargs['ax'] xlo, xhi = ax.get_xlim() xlo = max ( 0, xlo) # Check bc original call is ignored xhi = max (50, xhi) # Likewise if itr > xhi: xhi *= 2 ax.set_xlim ([xlo, xhi]) ax.set_ylim ( [ min(currlens), max(currlens) ] ) plot(iteratns, currlens, 'b', iteratns, bestlens, 'r') fig.draw() # schedule a refresh t1[0] = time.time() # Display any updates to the figure while gtk.events_pending(): gtk.mainiteration() # if running in normal gtk thread global interrupted if interrupted: return 1 return snob.default_status_func(*args)
Pretty!
I just finished adding pseudo-color plots to matplotlib in the CVS repository. Here are a couple of screenshots http://nitace.bsd.uchicago.edu:8080/files/share/pcolor_demo_large.png http://nitace.bsd.uchicago.edu:8080/files/share/mri_with_eeg_large.png The scripts that generated them are in examples/pcolor_demo.py and examples/mri_with_eeg.png. There is currently bug with pcolor in the GTK backend can cause a vertical banding to appear due to integer rounding in very small pcolor plots (eg, when you place the plot in a small subplot). The GD and PS backends work fine however. Enjoy! John Hunter