From: <md...@us...> - 2008-01-10 13:38:46
|
Revision: 4846 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4846&view=rev Author: mdboom Date: 2008-01-10 05:38:37 -0800 (Thu, 10 Jan 2008) Log Message: ----------- Merge Darren's win32 build changes to the maintenance branch (since they'll be handy there also). Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/setup.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-01-10 13:38:31 UTC (rev 4845) +++ branches/v0_91_maint/CHANGELOG 2008-01-10 13:38:37 UTC (rev 4846) @@ -1,3 +1,10 @@ +2008-01-10 Fix bug when displaying a tick value offset with scientific + notation. (Manifests itself as a warning that the \times + symbol can not be found). - MGD + +2008-01-10 Use setup.cfg to set the default parameters (tkagg, + numpy) when building windows installers - DSD + =============================================================== 2008-01-06 Released 0.91.2 at revision 4802 Modified: branches/v0_91_maint/setup.py =================================================================== --- branches/v0_91_maint/setup.py 2008-01-10 13:38:31 UTC (rev 4845) +++ branches/v0_91_maint/setup.py 2008-01-10 13:38:37 UTC (rev 4846) @@ -8,7 +8,7 @@ """ # This dict will be updated as we try to select the best option during -# the build process. However, values in setup.cfg will be used, if +# the build process. However, values in setup.cfg will be used, if # defined. rc = {'backend':'Agg', 'numerix':'numpy'} @@ -36,7 +36,7 @@ if major==2 and minor1<3 or major<2: raise SystemExit("""matplotlib requires Python 2.3 or later.""") - + import glob from distutils.core import setup from setupext import build_agg, build_gtkagg, build_tkagg, build_wxagg,\ @@ -112,7 +112,7 @@ subprocess_dir = os.path.dirname(subprocess.__file__) if subprocess_dir.endswith('.egg/subprocess'): havesubprocess = False - + if not havesubprocess: packages.append('subprocess') if sys.platform == 'win32': @@ -120,7 +120,7 @@ if not check_for_freetype(): sys.exit(1) - + build_ft2font(ext_modules, packages) build_ttconv(ext_modules, packages) build_contour(ext_modules, packages) @@ -145,7 +145,7 @@ build_windowing(ext_modules, packages) # the options can be True, False, or 'auto'. If True, try to build -# regardless of the lack of dependencies. If auto, silently skip +# regardless of the lack of dependencies. If auto, silently skip # when dependencies are missing. if options['build_tkagg']: if check_for_tk() or (options['build_tkagg'] is True): @@ -188,12 +188,12 @@ if hasdatetime: # dates require python23 datetime # only install pytz and dateutil if the user hasn't got them - + def add_pytz(): packages.append('pytz') resources = ['zone.tab', 'locales/pytz.pot'] # install pytz subdirs - for dirpath, dirname, filenames in os.walk(os.path.join('lib', 'pytz', + for dirpath, dirname, filenames in os.walk(os.path.join('lib', 'pytz', 'zoneinfo')): if '.svn' not in dirpath: # remove the 'lib/pytz' part of the path @@ -237,12 +237,8 @@ print_line() # Write the default matplotlibrc file -if sys.platform=='win32': - rc['backend'] = 'TkAgg' - rc['numerix'] = 'numpy' -else: - if options['backend']: rc['backend'] = options['backend'] - if options['numerix']: rc['numerix'] = options['numerix'] +if options['backend']: rc['backend'] = options['backend'] +if options['numerix']: rc['numerix'] = options['numerix'] template = file('matplotlibrc.template').read() file('lib/matplotlib/mpl-data/matplotlibrc', 'w').write(template%rc) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-01-31 15:21:14
|
Revision: 4911 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4911&view=rev Author: mdboom Date: 2008-01-31 07:21:10 -0800 (Thu, 31 Jan 2008) Log Message: ----------- Fix \sqrt with a numeric radical. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/examples/mathtext_examples.py branches/v0_91_maint/lib/matplotlib/mathtext.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-01-31 15:10:16 UTC (rev 4910) +++ branches/v0_91_maint/CHANGELOG 2008-01-31 15:21:10 UTC (rev 4911) @@ -1,3 +1,6 @@ +2008-01-31 Fix \sqrt with radical number (broken by making [ and ] + work below) - MGD + 2008-01-10 Fix bug displaying [ and ] in mathtext - MGD 2008-01-10 Fix bug when displaying a tick value offset with scientific Modified: branches/v0_91_maint/examples/mathtext_examples.py =================================================================== --- branches/v0_91_maint/examples/mathtext_examples.py 2008-01-31 15:10:16 UTC (rev 4910) +++ branches/v0_91_maint/examples/mathtext_examples.py 2008-01-31 15:21:10 UTC (rev 4911) @@ -40,7 +40,7 @@ r"$f^'$", r'$\frac{x_2888}{y}$', r"$\sqrt[3]{\frac{X_2}{Y}}=5$", - r"$\sqrt[5x\pi]{\prod^\frac{x}{2\pi^2}_\infty}$", + r"$\sqrt[5]{\prod^\frac{x}{2\pi^2}_\infty}$", r"$\sqrt[3]{x}=5$", r'$\frac{X}{\frac{X}{Y}}$', # From UTR #25 @@ -56,7 +56,7 @@ def doall(): tests = stests - + figure(figsize=(8, (len(tests) * 1) + 2)) plot([0, 0], 'r') grid(False) @@ -69,7 +69,7 @@ savefig('mathtext_examples') #close('all') show() - + if '--latex' in sys.argv: fd = open("mathtext_examples.ltx", "w") fd.write("\\documentclass{article}\n") Modified: branches/v0_91_maint/lib/matplotlib/mathtext.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/mathtext.py 2008-01-31 15:10:16 UTC (rev 4910) +++ branches/v0_91_maint/lib/matplotlib/mathtext.py 2008-01-31 15:21:10 UTC (rev 4911) @@ -2109,12 +2109,7 @@ ) + Optional( Suppress(Literal("[")) - + Group( - OneOrMore( - (c_over_c | symbol) - ^ font - ) - ) + + Regex("[0-9]+") + Suppress(Literal("]")), default = None ) @@ -2607,11 +2602,7 @@ if root is None: root = Box(0., 0., 0.) else: - if not isinstance(root, ParseResults): - raise ParseFatalException( - "Can not parse root of radical. " - "Only simple symbols are allowed in the root.") - root = Hlist(root.asList()) + root = Hlist([Char(x, state) for x in root]) root.shrink() root.shrink() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-01-31 18:59:25
|
Revision: 4914 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4914&view=rev Author: mdboom Date: 2008-01-31 10:59:22 -0800 (Thu, 31 Jan 2008) Log Message: ----------- Fix text spacing problems in PDF backend with some fonts. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-01-31 17:46:56 UTC (rev 4913) +++ branches/v0_91_maint/CHANGELOG 2008-01-31 18:59:22 UTC (rev 4914) @@ -1,3 +1,6 @@ +2008-01-31 Fix text spacing problems in PDF backend with *some* fonts, + such as STIXGeneral. + 2008-01-31 Fix \sqrt with radical number (broken by making [ and ] work below) - MGD Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py 2008-01-31 17:46:56 UTC (rev 4913) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py 2008-01-31 18:59:22 UTC (rev 4914) @@ -795,8 +795,7 @@ ccode = ord(c) gind = cmap.get(ccode) or 0 glyph = font.load_char(ccode, flags=LOAD_NO_HINTING) - # Why divided by 3.0 ??? Wish I knew... MGD - widths.append((ccode, cvt(glyph.horiAdvance) / 3.0)) + widths.append((ccode, glyph.horiAdvance / 6)) if ccode < 65536: cid_to_gid_map[ccode] = unichr(gind) max_ccode = max(ccode, max_ccode) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ds...@us...> - 2008-01-31 19:06:00
|
Revision: 4916 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4916&view=rev Author: dsdale Date: 2008-01-31 11:05:28 -0800 (Thu, 31 Jan 2008) Log Message: ----------- fixed a bug in ticker, unicode string passed to tex Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/ticker.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-01-31 19:01:38 UTC (rev 4915) +++ branches/v0_91_maint/CHANGELOG 2008-01-31 19:05:28 UTC (rev 4916) @@ -1,3 +1,5 @@ +2008-01-31 Don't use unicode strings with usetex by default - DSD + 2008-01-31 Fix text spacing problems in PDF backend with *some* fonts, such as STIXGeneral. Modified: branches/v0_91_maint/lib/matplotlib/ticker.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/ticker.py 2008-01-31 19:01:38 UTC (rev 4915) +++ branches/v0_91_maint/lib/matplotlib/ticker.py 2008-01-31 19:05:28 UTC (rev 4916) @@ -338,7 +338,7 @@ return ''.join(('$',sciNotStr,r'\mathdefault{',offsetStr,'}$')) elif self._usetex: if sciNotStr != '': - sciNotStr = u'\xd7%s' % sciNotStr + sciNotStr = u'\times%s' % sciNotStr return ''.join(('$',sciNotStr,offsetStr,'$')) else: return ''.join((sciNotStr,offsetStr)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-02-01 17:19:11
|
Revision: 4918 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4918&view=rev Author: mdboom Date: 2008-02-01 09:19:02 -0800 (Fri, 01 Feb 2008) Log Message: ----------- Fix reference leak on Glyph objects. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/src/ft2font.cpp Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-01-31 19:14:20 UTC (rev 4917) +++ branches/v0_91_maint/CHANGELOG 2008-02-01 17:19:02 UTC (rev 4918) @@ -1,3 +1,5 @@ +2008-02-01 Fix reference leak in ft2font Glyph objects. - MGD + 2008-01-31 Don't use unicode strings with usetex by default - DSD 2008-01-31 Fix text spacing problems in PDF backend with *some* fonts, Modified: branches/v0_91_maint/src/ft2font.cpp =================================================================== --- branches/v0_91_maint/src/ft2font.cpp 2008-01-31 19:14:20 UTC (rev 4917) +++ branches/v0_91_maint/src/ft2font.cpp 2008-02-01 17:19:02 UTC (rev 4918) @@ -8,9 +8,9 @@ /** To improve the hinting of the fonts, this code uses a hack presented here: - + http://antigrain.com/research/font_rasterization/index.html - + The idea is to limit the effect of hinting in the x-direction, while preserving hinting in the y-direction. Since freetype does not support this directly, the dpi in the x-direction is set higher than @@ -20,7 +20,7 @@ hinting, whereas the global transform does not, this is documented behavior of freetype, and therefore hopefully unlikely to change. The freetype 2 tutorial says: - + NOTE: The transformation is applied to every glyph that is loaded through FT_Load_Glyph and is completely independent of any hinting process. This means that you won't get the same @@ -42,7 +42,7 @@ FT_Library _ft2Library; -// FT2Image::FT2Image() : +// FT2Image::FT2Image() : // _isDirty(true), // _buffer(NULL), // _width(0), _height(0), @@ -53,7 +53,7 @@ FT2Image::FT2Image(unsigned long width, unsigned long height) : _isDirty(true), - _buffer(NULL), + _buffer(NULL), _width(0), _height(0), _rgbCopy(NULL), _rgbaCopy(NULL) { @@ -61,10 +61,10 @@ resize(width, height); } -FT2Image::~FT2Image() { +FT2Image::~FT2Image() { _VERBOSE("FT2Image::~FT2Image"); - delete [] _buffer; - _buffer=NULL; + delete [] _buffer; + _buffer=NULL; delete _rgbCopy; delete _rgbaCopy; } @@ -151,7 +151,7 @@ } void -FT2Image::draw_rect(unsigned long x0, unsigned long y0, +FT2Image::draw_rect(unsigned long x0, unsigned long y0, unsigned long x1, unsigned long y1) { if ( x0<0 || y0<0 || x1<0 || y1<0 || x0>_width || x1>_width || @@ -195,7 +195,7 @@ return Py::Object(); } -void FT2Image::draw_rect_filled(unsigned long x0, unsigned long y0, +void FT2Image::draw_rect_filled(unsigned long x0, unsigned long y0, unsigned long x1, unsigned long y1) { x0 = CLAMP(x0, 0, _width); y0 = CLAMP(y0, 0, _height); @@ -209,7 +209,7 @@ } _isDirty = true; -} +} char FT2Image::draw_rect_filled__doc__[] = "draw_rect_filled(x0, y0, x1, y1)\n" @@ -245,7 +245,7 @@ args.verify_length(0); return Py::asObject - (PyString_FromStringAndSize((const char *)_buffer, + (PyString_FromStringAndSize((const char *)_buffer, _width*_height) ); } @@ -284,7 +284,7 @@ args.verify_length(0); makeRgbCopy(); - + return _rgbCopy->py_as_str(args); } @@ -321,7 +321,7 @@ args.verify_length(0); makeRgbaCopy(); - + return _rgbaCopy->py_as_str(args); } @@ -671,7 +671,7 @@ } // set a default fontsize 12 pt at 72dpi -#ifdef VERTICAL_HINTING +#ifdef VERTICAL_HINTING error = FT_Set_Char_Size( face, 12 * 64, 0, 72 * HORIZ_HINTING, 72 ); static FT_Matrix transform = { 65536 / HORIZ_HINTING, 0, 0, 65536 }; FT_Set_Transform( face, &transform, 0 ); @@ -829,7 +829,7 @@ int error = FT_Set_Char_Size( face, (long)(ptsize * 64), 0, (unsigned int)dpi, (unsigned int)dpi ); -#endif +#endif if (error) throw Py::RuntimeError("Could not set the fontsize"); return Py::Object(); @@ -1036,7 +1036,6 @@ if ( (size_t)num >= gms.size()) throw Py::ValueError("Glyph index out of range"); - Py_INCREF(gms[num]); return Py::asObject(gms[num]); } @@ -1078,7 +1077,7 @@ long charcode = Py::Long(args[0]), flags = Py::Long(FT_LOAD_FORCE_AUTOHINT); if (kwargs.hasKey("flags")) flags = Py::Long(kwargs["flags"]); - + int error = FT_Load_Char( face, (unsigned long)charcode, flags); if (error) @@ -1094,7 +1093,6 @@ glyphs.push_back(thisGlyph); Glyph* gm = new Glyph(face, thisGlyph, num); gms.push_back(gm); - Py_INCREF(gm); //todo: refcount correct? return Py::asObject( gm); } @@ -1659,7 +1657,7 @@ } } -char FT2Font::get_image__doc__ [] = +char FT2Font::get_image__doc__ [] = "get_image()\n" "\n" "Returns the underlying image buffer for this font object.\n"; @@ -1669,7 +1667,7 @@ if (image) { Py_XINCREF(image); return Py::asObject(image); - } + } throw Py::RuntimeError("You must call .set_text() before .get_image()"); } @@ -1684,7 +1682,7 @@ args.verify_length(1); std::string filename = Py::String(args[0]); - FT_Error error = + FT_Error error = FT_Attach_File(face, filename.c_str()); if (error) { @@ -1884,7 +1882,7 @@ d["KERNING_DEFAULT"] = Py::Int(FT_KERNING_DEFAULT); d["KERNING_UNFITTED"] = Py::Int(FT_KERNING_UNFITTED); d["KERNING_UNSCALED"] = Py::Int(FT_KERNING_UNSCALED); - + d["LOAD_DEFAULT"] = Py::Long(FT_LOAD_DEFAULT); d["LOAD_NO_SCALE"] = Py::Long(FT_LOAD_NO_SCALE); d["LOAD_NO_HINTING"] = Py::Long(FT_LOAD_NO_HINTING); @@ -1894,7 +1892,7 @@ d["LOAD_FORCE_AUTOHINT"] = Py::Long(FT_LOAD_FORCE_AUTOHINT); d["LOAD_CROP_BITMAP"] = Py::Long(FT_LOAD_CROP_BITMAP); d["LOAD_PEDANTIC"] = Py::Long(FT_LOAD_PEDANTIC); - d["LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH"] = + d["LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH"] = Py::Long(FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH); d["LOAD_NO_RECURSE"] = Py::Long(FT_LOAD_NO_RECURSE); d["LOAD_IGNORE_TRANSFORM"] = Py::Long(FT_LOAD_IGNORE_TRANSFORM); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jo...@us...> - 2008-02-11 19:40:22
|
Revision: 4951 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4951&view=rev Author: jouni Date: 2008-02-11 11:40:18 -0800 (Mon, 11 Feb 2008) Log Message: ----------- Update plotting() doc string to refer to getp/setp. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/pyplot.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-02-10 15:21:56 UTC (rev 4950) +++ branches/v0_91_maint/CHANGELOG 2008-02-11 19:40:18 UTC (rev 4951) @@ -1,3 +1,5 @@ +2008-02-11 Update plotting() doc string to refer to getp/setp. - JKS + 2008-02-01 Fix doubly-included font problem in Postscript backend - MGD 2008-02-01 Fix reference leak in ft2font Glyph objects. - MGD Modified: branches/v0_91_maint/lib/matplotlib/pyplot.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/pyplot.py 2008-02-10 15:21:56 UTC (rev 4950) +++ branches/v0_91_maint/lib/matplotlib/pyplot.py 2008-02-11 19:40:18 UTC (rev 4951) @@ -933,7 +933,7 @@ gca - return the current axes gcf - return the current figure gci - get the current image, or None - get - get a handle graphics property + getp - get a handle graphics property hist - make a histogram hold - set the hold state on current axes legend - add a legend to the axes @@ -949,7 +949,7 @@ rc - control the default params savefig - save the current figure scatter - make a scatter plot - set - set a handle graphics property + setp - set a handle graphics property semilogx - log x axis semilogy - log y axis show - show the figures This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2008-02-19 15:27:01
|
Revision: 4977 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4977&view=rev Author: jdh2358 Date: 2008-02-19 07:26:56 -0800 (Tue, 19 Feb 2008) Log Message: ----------- added rec_groupby and rec2txt Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/mlab.py Added Paths: ----------- branches/v0_91_maint/examples/data/aapl.csv branches/v0_91_maint/examples/rec_groupby_demo.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-02-16 21:12:14 UTC (rev 4976) +++ branches/v0_91_maint/CHANGELOG 2008-02-19 15:26:56 UTC (rev 4977) @@ -1,3 +1,7 @@ +2008-02-16 Added some new rec array functionality to mlab + (rec_summarize, rec2txt and rec_groupby). See + examples/rec_groupby_demo.py. Thanks to Tim M for rec2txt. + 2008-02-11 Update plotting() doc string to refer to getp/setp. - JKS 2008-02-01 Fix doubly-included font problem in Postscript backend - MGD Added: branches/v0_91_maint/examples/data/aapl.csv =================================================================== --- branches/v0_91_maint/examples/data/aapl.csv (rev 0) +++ branches/v0_91_maint/examples/data/aapl.csv 2008-02-19 15:26:56 UTC (rev 4977) @@ -0,0 +1,3134 @@ +Date,Open,High,Low,Close,Volume,Adj Close +2008-02-15,126.27,127.08,124.06,124.63,32163400,124.63 +2008-02-14,129.40,130.80,127.01,127.46,34074900,127.46 +2008-02-13,126.68,129.78,125.63,129.40,34542300,129.40 +2008-02-12,130.70,131.00,123.62,124.86,43749900,124.86 +2008-02-11,128.01,129.98,127.20,129.45,42886900,129.45 +2008-02-08,122.08,125.70,121.60,125.48,48412700,125.48 +2008-02-07,119.97,124.78,117.27,121.24,74404700,121.24 +2008-02-06,130.83,131.92,121.77,122.00,56093900,122.00 +2008-02-05,130.43,134.00,128.90,129.36,40723400,129.36 +2008-02-04,134.21,135.90,131.42,131.65,32103400,131.65 +2008-02-01,136.24,136.59,132.18,133.75,36085400,133.75 +2008-01-31,129.45,136.65,129.40,135.36,48004500,135.36 +2008-01-30,131.37,135.45,130.00,132.18,44323500,132.18 +2008-01-29,131.15,132.79,129.05,131.54,39269800,131.54 +2008-01-28,128.16,133.20,126.45,130.01,52628400,130.01 +2008-01-25,138.99,139.09,129.61,130.01,55440400,130.01 +2008-01-24,139.99,140.70,132.01,135.60,71564900,135.60 +2008-01-23,136.19,140.00,126.14,139.07,120415200,139.07 +2008-01-22,148.06,159.98,146.00,155.64,86214800,155.64 +2008-01-18,161.71,165.75,159.61,161.36,61547400,161.36 +2008-01-17,161.51,165.36,158.42,160.89,62780700,160.89 +2008-01-16,165.23,169.01,156.70,159.64,79065900,159.64 +2008-01-15,177.72,179.22,164.66,169.04,83688500,169.04 +2008-01-14,177.52,179.42,175.17,178.78,39256900,178.78 +2008-01-11,176.00,177.85,170.00,172.69,43936100,172.69 +2008-01-10,177.58,181.00,175.41,178.02,52904500,178.02 +2008-01-09,171.30,179.50,168.30,179.40,64781500,179.40 +2008-01-08,180.14,182.46,170.80,171.25,54338200,171.25 +2008-01-07,181.25,183.60,170.23,177.64,73972900,177.64 +2008-01-04,191.45,193.00,178.89,180.05,51959400,180.05 +2008-01-03,195.41,197.39,192.69,194.93,30052300,194.93 +2008-01-02,199.27,200.26,192.55,194.84,38519200,194.84 +2007-12-31,199.50,200.50,197.75,198.08,19249800,198.08 +2007-12-28,200.59,201.56,196.88,199.83,24766200,199.83 +2007-12-27,198.95,202.96,197.80,198.57,28383000,198.57 +2007-12-26,199.01,200.96,196.82,198.95,25110500,198.95 +2007-12-24,195.03,199.33,194.79,198.80,17150100,198.80 +2007-12-21,190.12,193.91,189.89,193.91,35498600,193.91 +2007-12-20,185.43,187.83,183.33,187.21,27603200,187.21 +2007-12-19,182.98,184.64,180.90,183.12,29484300,183.12 +2007-12-18,186.52,187.33,178.60,182.98,43649200,182.98 +2007-12-17,190.72,192.65,182.98,184.40,36556700,184.40 +2007-12-14,190.37,193.20,189.54,190.39,24082600,190.39 +2007-12-13,190.19,192.12,187.82,191.83,30879200,191.83 +2007-12-12,193.44,194.48,185.76,190.86,43696200,190.86 +2007-12-11,194.75,196.83,187.39,188.54,39589700,188.54 +2007-12-10,193.59,195.66,192.69,194.21,25776800,194.21 +2007-12-07,190.54,194.99,188.04,194.30,38057700,194.30 +2007-12-06,186.19,190.10,186.12,189.95,32136100,189.95 +2007-12-05,182.89,186.00,182.41,185.50,31833300,185.50 +2007-12-04,177.15,180.90,176.99,179.81,27625500,179.81 +2007-12-03,181.86,184.14,177.70,178.86,34308100,178.86 +2007-11-30,187.34,187.70,179.70,182.22,42400500,182.22 +2007-11-29,179.43,185.17,179.15,184.29,37413100,184.29 +2007-11-28,176.82,180.60,175.35,180.22,41073100,180.22 +2007-11-27,175.22,175.79,170.01,174.81,47005000,174.81 +2007-11-26,173.59,177.27,172.35,172.54,46603400,172.54 +2007-11-23,172.00,172.05,169.75,171.54,16622500,171.54 +2007-11-21,165.84,172.35,164.67,168.46,43493200,168.46 +2007-11-20,165.67,171.79,163.53,168.85,55076200,168.85 +2007-11-19,166.10,168.20,162.10,163.95,41196800,163.95 +2007-11-16,165.30,167.02,159.33,166.39,49391300,166.39 +2007-11-15,166.39,169.59,160.30,164.30,53095600,164.30 +2007-11-14,177.16,177.57,163.74,166.11,51695400,166.11 +2007-11-13,160.85,170.98,153.76,169.96,62034100,169.96 +2007-11-12,165.28,167.70,150.63,153.76,63057700,153.76 +2007-11-09,171.15,175.12,165.21,165.37,54458700,165.37 +2007-11-08,186.67,186.90,167.77,175.47,67458500,175.47 +2007-11-07,190.61,192.68,186.13,186.30,35473400,186.30 +2007-11-06,187.05,192.00,185.27,191.79,34068500,191.79 +2007-11-05,185.29,188.96,184.24,186.18,28703700,186.18 +2007-11-02,189.21,189.44,183.49,187.87,35769600,187.87 +2007-11-01,188.60,190.10,180.00,187.44,28734100,187.44 +2007-10-31,187.63,190.12,184.95,189.95,29699700,189.95 +2007-10-30,186.18,189.37,184.73,187.00,33495900,187.00 +2007-10-29,185.45,186.59,184.70,185.09,19281800,185.09 +2007-10-26,185.29,185.37,182.88,184.70,25219800,184.70 +2007-10-25,184.87,185.90,181.66,182.78,34729500,182.78 +2007-10-24,185.81,187.21,179.24,185.93,45961300,185.93 +2007-10-23,188.56,188.60,182.76,186.16,64005900,186.16 +2007-10-22,170.35,174.90,169.96,174.36,56203900,174.36 +2007-10-19,174.24,174.63,170.00,170.42,46063800,170.42 +2007-10-18,171.50,174.19,171.05,173.50,29417000,173.50 +2007-10-17,172.69,173.04,169.18,172.75,39969400,172.75 +2007-10-16,165.54,170.18,165.15,169.58,38093400,169.58 +2007-10-15,167.98,169.57,163.50,166.98,38448900,166.98 +2007-10-12,163.01,167.28,161.80,167.25,35244200,167.25 +2007-10-11,169.49,171.88,153.21,162.23,58671500,162.23 +2007-10-10,167.55,167.88,165.60,166.79,23779600,166.79 +2007-10-09,170.20,171.11,166.68,167.86,39438800,167.86 +2007-10-08,163.49,167.91,162.97,167.91,29815900,167.91 +2007-10-05,158.37,161.58,157.70,161.45,33595200,161.45 +2007-10-04,158.00,158.08,153.50,156.24,23402900,156.24 +2007-10-03,157.78,159.18,157.01,157.92,24696400,157.92 +2007-10-02,156.55,158.59,155.89,158.45,28250600,158.45 +2007-10-01,154.63,157.41,152.93,156.34,29861300,156.34 +2007-09-28,153.44,154.60,152.75,153.47,21915800,153.47 +2007-09-27,153.77,154.52,152.32,154.50,23427700,154.50 +2007-09-26,154.47,155.00,151.25,152.77,34801900,152.77 +2007-09-25,146.84,153.22,146.82,153.18,42572900,153.18 +2007-09-24,146.73,149.85,146.65,148.28,37506200,148.28 +2007-09-21,141.14,144.65,140.31,144.15,40651300,144.15 +2007-09-20,140.15,141.79,139.32,140.31,24575400,140.31 +2007-09-19,143.02,143.16,139.40,140.77,36633200,140.77 +2007-09-18,139.06,142.85,137.83,140.92,37951300,140.92 +2007-09-17,138.99,140.59,137.60,138.41,28301900,138.41 +2007-09-14,136.57,138.98,136.20,138.81,21674400,138.81 +2007-09-13,138.83,139.00,136.65,137.20,23434400,137.20 +2007-09-12,135.99,139.40,135.75,136.85,36527500,136.85 +2007-09-11,137.90,138.30,133.75,135.49,34710200,135.49 +2007-09-10,136.99,138.04,133.95,136.71,53137100,136.71 +2007-09-07,132.01,132.30,130.00,131.77,51092000,131.77 +2007-09-06,135.56,137.57,132.71,135.01,67902200,135.01 +2007-09-05,144.97,145.84,136.10,136.76,83150800,136.76 +2007-09-04,139.94,145.73,139.84,144.16,47030100,144.16 +2007-08-31,139.49,139.65,137.41,138.48,31317400,138.48 +2007-08-30,132.67,138.25,132.30,136.25,51270800,136.25 +2007-08-29,129.88,134.18,129.54,134.08,41673600,134.08 +2007-08-28,130.99,132.41,126.63,126.82,42120200,126.82 +2007-08-27,133.39,134.66,132.10,132.25,25265700,132.25 +2007-08-24,130.53,135.37,129.81,135.30,32565500,135.30 +2007-08-23,133.09,133.34,129.76,131.07,30958500,131.07 +2007-08-22,131.22,132.75,130.33,132.51,37920200,132.51 +2007-08-21,122.21,128.96,121.00,127.57,46537400,127.57 +2007-08-20,123.96,124.50,120.50,122.22,28689900,122.22 +2007-08-17,122.01,123.50,119.82,122.06,42680800,122.06 +2007-08-16,117.01,118.50,111.62,117.05,66667500,117.05 +2007-08-15,122.74,124.86,119.65,119.90,35459000,119.90 +2007-08-14,128.29,128.30,123.71,124.03,26393100,124.03 +2007-08-13,128.32,129.35,126.50,127.79,26889700,127.79 +2007-08-10,123.12,127.75,120.30,125.00,50383900,125.00 +2007-08-09,131.11,133.00,125.09,126.39,40192700,126.39 +2007-08-08,136.76,136.86,132.00,134.01,28860600,134.01 +2007-08-07,134.94,137.24,132.63,135.03,33926300,135.03 +2007-08-06,132.90,135.27,128.30,135.25,33041800,135.25 +2007-08-03,135.26,135.95,131.50,131.85,24256700,131.85 +2007-08-02,136.65,136.96,134.15,136.49,30451600,136.49 +2007-08-01,133.64,135.38,127.77,135.00,62505600,135.00 +2007-07-31,142.97,143.48,131.52,131.76,62942600,131.76 +2007-07-30,144.33,145.45,139.57,141.43,39535300,141.43 +2007-07-27,146.19,148.92,143.78,143.85,41467800,143.85 +2007-07-26,145.91,148.50,136.96,146.00,78093900,146.00 +2007-07-25,137.35,138.36,135.00,137.26,53435100,137.26 +2007-07-24,138.88,141.00,134.15,134.89,64117600,134.89 +2007-07-23,143.31,145.22,140.93,143.70,37017500,143.70 +2007-07-20,141.65,144.18,140.00,143.75,41706200,143.75 +2007-07-19,140.30,140.81,139.65,140.00,26174700,140.00 +2007-07-18,138.19,138.44,136.04,138.12,27030600,138.12 +2007-07-17,138.30,139.60,137.50,138.91,25355700,138.91 +2007-07-16,138.39,139.98,137.50,138.10,33432600,138.10 +2007-07-13,135.03,137.85,134.52,137.73,32414500,137.73 +2007-07-12,133.85,134.24,132.39,134.07,25164600,134.07 +2007-07-11,132.07,133.70,131.31,132.39,29349000,132.39 +2007-07-10,128.88,134.50,128.81,132.35,44821700,132.35 +2007-07-09,132.38,132.90,129.18,130.33,35565000,130.33 +2007-07-06,133.13,133.34,130.40,132.30,31239100,132.30 +2007-07-05,128.80,132.97,128.69,132.75,51894700,132.75 +2007-07-03,122.00,127.40,121.50,127.17,41517200,127.17 +2007-07-02,121.05,122.09,119.30,121.26,35530800,121.26 +2007-06-29,121.97,124.00,121.09,122.04,40637200,122.04 +2007-06-28,122.36,122.49,120.00,120.56,29933700,120.56 +2007-06-27,120.61,122.04,119.26,121.89,34810600,121.89 +2007-06-26,123.98,124.00,118.72,119.65,48035900,119.65 +2007-06-25,124.19,125.09,121.06,122.34,34478700,122.34 +2007-06-22,123.85,124.45,122.38,123.00,22567000,123.00 +2007-06-21,121.70,124.29,120.72,123.90,30965900,123.90 +2007-06-20,123.87,124.66,121.50,121.55,32054000,121.55 +2007-06-19,124.69,125.01,122.91,123.66,33679500,123.66 +2007-06-18,123.28,125.18,122.54,125.09,32521600,125.09 +2007-06-15,120.62,120.67,119.86,120.50,28972100,120.50 +2007-06-14,117.20,119.45,116.42,118.75,34759500,118.75 +2007-06-13,121.15,121.19,115.40,117.50,61476900,117.50 +2007-06-12,119.35,121.71,118.31,120.38,50948800,120.38 +2007-06-11,126.00,126.15,119.54,120.19,66937800,120.19 +2007-06-08,125.82,125.83,122.29,124.49,44345800,124.49 +2007-06-07,124.99,127.61,123.19,124.07,68395700,124.07 +2007-06-06,122.30,124.05,121.95,123.64,39722900,123.64 +2007-06-05,121.41,122.69,120.50,122.67,32885200,122.67 +2007-06-04,118.63,121.73,117.90,121.33,31666900,121.33 +2007-06-01,121.10,121.19,118.29,118.40,31616500,118.40 +2007-05-31,120.07,122.17,119.54,121.19,46323800,121.19 +2007-05-30,114.30,118.88,113.53,118.77,52801600,118.77 +2007-05-29,114.45,114.86,112.69,114.35,23060500,114.35 +2007-05-25,112.00,113.78,111.50,113.62,22605700,113.62 +2007-05-24,112.81,114.46,110.37,110.69,31691500,110.69 +2007-05-23,114.02,115.00,112.59,112.89,32549100,112.89 +2007-05-22,112.49,113.75,112.01,113.54,20443200,113.54 +2007-05-21,110.31,112.45,110.05,111.98,22853300,111.98 +2007-05-18,110.23,110.64,109.77,110.02,22190900,110.02 +2007-05-17,107.15,109.87,107.15,109.44,26260400,109.44 +2007-05-16,108.53,108.83,103.42,107.34,40241700,107.34 +2007-05-15,109.57,110.20,106.48,107.52,34089800,107.52 +2007-05-14,109.62,110.00,108.25,109.36,23283800,109.36 +2007-05-11,107.74,109.13,106.78,108.74,23346300,108.74 +2007-05-10,106.63,108.84,105.92,107.34,42759200,107.34 +2007-05-09,104.91,106.96,104.89,106.88,25634200,106.88 +2007-05-08,103.47,105.15,103.42,105.06,27999900,105.06 +2007-05-07,101.08,104.35,101.01,103.92,30769900,103.92 +2007-05-04,100.80,101.60,100.50,100.81,13642400,100.81 +2007-05-03,100.73,101.45,100.01,100.40,20574200,100.40 +2007-05-02,99.65,100.54,99.47,100.39,18040900,100.39 +2007-05-01,99.59,100.35,98.55,99.47,19018700,99.47 +2007-04-30,100.09,101.00,99.67,99.80,22018200,99.80 +2007-04-27,98.18,99.95,97.69,99.92,24978700,99.92 +2007-04-26,101.58,102.50,98.30,98.84,62063500,98.84 +2007-04-25,94.23,95.40,93.80,95.35,42398000,95.35 +2007-04-24,93.96,96.39,91.30,93.24,37687600,93.24 +2007-04-23,91.59,93.80,91.42,93.51,27867500,93.51 +2007-04-20,90.89,91.18,90.55,90.97,18670700,90.97 +2007-04-19,90.19,91.25,89.83,90.27,15211200,90.27 +2007-04-18,90.16,90.85,89.60,90.40,16573000,90.40 +2007-04-17,92.00,92.30,89.70,90.35,26854300,90.35 +2007-04-16,90.57,91.50,90.25,91.43,21751200,91.43 +2007-04-13,90.90,91.40,90.06,90.24,25712200,90.24 +2007-04-12,92.04,92.31,90.72,92.19,23452700,92.19 +2007-04-11,93.90,93.95,92.33,92.59,19607800,92.59 +2007-04-10,93.67,94.26,93.41,94.25,12588100,94.25 +2007-04-09,95.21,95.30,93.04,93.65,14762200,93.65 +2007-04-05,94.12,94.68,93.52,94.68,12697000,94.68 +2007-04-04,94.94,95.14,94.13,94.27,17028000,94.27 +2007-04-03,94.14,95.23,93.76,94.50,20854800,94.50 +2007-04-02,94.14,94.25,93.02,93.65,17928300,93.65 +2007-03-30,94.28,94.68,92.75,92.91,21448500,92.91 +2007-03-29,94.19,94.19,92.23,93.75,25918700,93.75 +2007-03-28,94.88,95.40,93.15,93.24,33654900,93.24 +2007-03-27,95.71,96.83,95.00,95.46,33287600,95.46 +2007-03-26,93.99,95.90,93.30,95.85,30892400,95.85 +2007-03-23,93.35,94.07,93.30,93.52,16103000,93.52 +2007-03-22,93.73,94.36,93.00,93.96,20053300,93.96 +2007-03-21,91.99,94.00,91.65,93.87,24532000,93.87 +2007-03-20,91.35,91.84,91.06,91.48,17461300,91.48 +2007-03-19,90.24,91.55,89.59,91.13,25462900,91.13 +2007-03-16,89.54,89.99,89.32,89.59,20418000,89.59 +2007-03-15,89.96,90.36,89.31,89.57,19982100,89.57 +2007-03-14,88.60,90.00,87.92,90.00,28449500,90.00 +2007-03-13,89.41,90.60,88.40,88.40,30996100,88.40 +2007-03-12,88.07,89.99,87.99,89.87,26050300,89.87 +2007-03-09,88.80,88.85,87.40,87.97,16137000,87.97 +2007-03-08,88.59,88.72,87.46,88.00,18250400,88.00 +2007-03-07,88.05,88.97,87.45,87.72,22367300,87.72 +2007-03-06,87.80,88.31,87.40,88.19,25828100,88.19 +2007-03-05,85.89,88.65,85.76,86.32,29960700,86.32 +2007-03-02,86.77,87.54,85.21,85.41,30714300,85.41 +2007-03-01,84.03,88.31,83.75,87.06,50554600,87.06 +2007-02-28,83.00,85.60,83.00,84.61,32838400,84.61 +2007-02-27,86.30,87.08,83.41,83.93,40921900,83.93 +2007-02-26,89.84,90.00,87.61,88.51,21994600,88.51 +2007-02-23,89.16,90.34,88.85,89.07,18496200,89.07 +2007-02-22,90.80,90.81,88.53,89.51,29936600,89.51 +2007-02-21,85.98,89.49,85.96,89.20,41261200,89.20 +2007-02-20,84.65,86.16,84.16,85.90,22060800,85.90 +2007-02-16,85.25,85.41,84.66,84.83,14281000,84.83 +2007-02-15,85.44,85.62,84.78,85.21,12987900,85.21 +2007-02-14,84.63,85.64,84.57,85.30,18142200,85.30 +2007-02-13,85.16,85.29,84.30,84.70,20749500,84.70 +2007-02-12,84.43,85.18,83.63,84.88,25859700,84.88 +2007-02-09,85.88,86.20,83.21,83.27,30733600,83.27 +2007-02-08,85.43,86.51,85.41,86.18,24251100,86.18 +2007-02-07,84.48,86.38,83.55,86.15,38100900,86.15 +2007-02-06,84.45,84.47,82.86,84.15,30871200,84.15 +2007-02-05,84.30,85.23,83.94,83.94,20673300,83.94 +2007-02-02,84.12,85.25,83.70,84.75,22197500,84.75 +2007-02-01,86.23,86.27,84.74,84.74,23726500,84.74 +2007-01-31,84.86,86.00,84.35,85.73,30573900,85.73 +2007-01-30,86.43,86.49,85.25,85.55,20641800,85.55 +2007-01-29,86.30,86.65,85.53,85.94,32202300,85.94 +2007-01-26,87.11,87.37,84.99,85.38,35245500,85.38 +2007-01-25,87.11,88.50,86.03,86.25,32356200,86.25 +2007-01-24,86.68,87.15,86.08,86.70,33136200,86.70 +2007-01-23,85.73,87.51,85.51,85.70,43122300,85.70 +2007-01-22,89.14,89.16,85.65,86.79,51929500,86.79 +2007-01-19,88.63,89.65,88.12,88.50,48731200,88.50 +2007-01-18,92.10,92.11,89.05,89.07,84450200,89.07 +2007-01-17,97.56,97.60,94.82,94.95,58795000,94.95 +2007-01-16,95.68,97.25,95.45,97.10,44431300,97.10 +2007-01-12,94.59,95.06,93.23,94.62,46881800,94.62 +2007-01-11,95.94,96.78,95.10,95.80,51437600,95.80 +2007-01-10,94.75,97.80,93.45,97.00,105460000,97.00 +2007-01-09,86.45,92.98,85.15,92.57,119617800,92.57 +2007-01-08,85.96,86.53,85.28,85.47,28468100,85.47 +2007-01-05,85.77,86.20,84.40,85.05,29812200,85.05 +2007-01-04,84.05,85.95,83.82,85.66,30259300,85.66 +2007-01-03,86.29,86.58,81.90,83.80,44225700,83.80 +2006-12-29,83.95,85.40,83.36,84.84,38443900,84.84 +2006-12-28,80.22,81.25,79.65,80.87,39995600,80.87 +2006-12-27,78.15,82.00,76.77,81.52,69134100,81.52 +2006-12-26,82.15,82.57,80.89,81.51,17524600,81.51 +2006-12-22,83.46,84.04,81.60,82.20,21903700,82.20 +2006-12-21,84.70,85.48,82.20,82.90,32271400,82.90 +2006-12-20,86.47,86.67,84.74,84.76,20274700,84.76 +2006-12-19,84.73,86.68,83.62,86.31,32550200,86.31 +2006-12-18,87.63,88.00,84.59,85.47,25770600,85.47 +2006-12-15,89.02,89.22,87.33,87.72,26426400,87.72 +2006-12-14,89.05,90.00,88.26,88.55,29726100,88.55 +2006-12-13,87.95,89.07,87.15,89.05,30609000,89.05 +2006-12-12,88.61,88.84,85.53,86.14,36665000,86.14 +2006-12-11,88.90,89.30,88.05,88.75,17849300,88.75 +2006-12-08,87.23,89.39,87.00,88.26,28009900,88.26 +2006-12-07,90.03,90.50,86.90,87.04,35886700,87.04 +2006-12-06,90.64,91.39,89.67,89.83,22792300,89.83 +2006-12-05,91.65,92.33,90.87,91.27,23672800,91.27 +2006-12-04,91.88,92.05,90.50,91.12,25340600,91.12 +2006-12-01,91.80,92.33,90.10,91.32,28395700,91.32 +2006-11-30,92.21,92.68,91.06,91.66,31088800,91.66 +2006-11-29,93.00,93.15,90.25,91.80,41324400,91.80 +2006-11-28,90.36,91.97,89.91,91.81,37006200,91.81 +2006-11-27,92.51,93.16,89.50,89.54,38387000,89.54 +2006-11-24,89.53,93.08,89.50,91.63,18524200,91.63 +2006-11-22,88.99,90.75,87.85,90.31,23997900,90.31 +2006-11-21,87.42,88.60,87.11,88.60,22238100,88.60 +2006-11-20,85.40,87.00,85.20,86.47,20385500,86.47 +2006-11-17,85.14,85.94,85.00,85.85,16658000,85.85 +2006-11-16,84.87,86.30,84.62,85.61,24783600,85.61 +2006-11-15,85.05,85.90,84.00,84.05,23404400,84.05 +2006-11-14,84.80,85.00,83.90,85.00,21034100,85.00 +2006-11-13,83.22,84.45,82.64,84.35,16095500,84.35 +2006-11-10,83.55,83.60,82.50,83.12,13352300,83.12 +2006-11-09,82.90,84.69,82.12,83.34,32966200,83.34 +2006-11-08,80.02,82.69,79.89,82.45,24675600,82.45 +2006-11-07,80.45,81.00,80.13,80.51,18783300,80.51 +2006-11-06,78.95,80.06,78.43,79.71,15520600,79.71 +2006-11-03,79.36,79.53,77.79,78.29,15424600,78.29 +2006-11-02,78.92,79.32,78.50,78.98,16624400,78.98 +2006-11-01,81.10,81.38,78.36,79.16,21828300,79.16 +2006-10-31,81.45,81.68,80.23,81.08,17909800,81.08 +2006-10-30,79.99,80.90,79.50,80.42,17854200,80.42 +2006-10-27,81.75,82.45,80.01,80.41,21248800,80.41 +2006-10-26,81.90,82.60,81.13,82.19,15455600,82.19 +2006-10-25,81.35,82.00,81.01,81.68,17329100,81.68 +2006-10-24,81.21,81.68,80.20,81.05,16543300,81.05 +2006-10-23,79.99,81.90,79.75,81.46,29732400,81.46 +2006-10-20,78.97,79.99,78.67,79.95,22836200,79.95 +2006-10-19,79.26,79.95,78.16,78.99,54034900,78.99 +2006-10-18,74.75,75.37,73.91,74.53,40496700,74.53 +2006-10-17,75.04,75.27,74.04,74.29,17175900,74.29 +2006-10-16,75.19,75.88,74.79,75.40,18167600,75.40 +2006-10-13,75.63,76.88,74.74,75.02,24435600,75.02 +2006-10-12,73.61,75.39,73.60,75.26,21173400,75.26 +2006-10-11,73.42,73.98,72.60,73.23,20423400,73.23 +2006-10-10,74.54,74.58,73.08,73.81,18985300,73.81 +2006-10-09,73.80,75.08,73.53,74.63,15650800,74.63 +2006-10-06,74.42,75.04,73.81,74.22,16677100,74.22 +2006-10-05,74.53,76.16,74.13,74.83,24424400,74.83 +2006-10-04,74.10,75.46,73.16,75.38,29610100,75.38 +2006-10-03,74.45,74.95,73.19,74.08,28239600,74.08 +2006-10-02,75.10,75.87,74.30,74.86,25451400,74.86 +2006-09-29,77.11,77.52,76.68,76.98,14493300,76.98 +2006-09-28,77.02,77.48,75.95,77.01,25843200,77.01 +2006-09-27,77.17,77.47,75.82,76.41,28941900,76.41 +2006-09-26,76.18,77.78,76.10,77.61,39391000,77.61 +2006-09-25,73.81,75.86,73.72,75.75,30678300,75.75 +2006-09-22,74.30,74.34,72.58,73.00,23754000,73.00 +2006-09-21,75.25,76.06,74.02,74.65,28361600,74.65 +2006-09-20,74.38,75.68,74.22,75.26,29385400,75.26 +2006-09-19,74.10,74.36,72.80,73.77,25358900,73.77 +2006-09-18,73.80,74.86,73.30,73.89,25188500,73.89 +2006-09-15,74.60,74.98,73.29,74.10,35066200,74.10 +2006-09-14,73.72,74.67,73.46,74.17,28633200,74.17 +2006-09-13,72.85,74.32,72.30,74.20,40933500,74.20 +2006-09-12,72.81,73.45,71.45,72.63,60167400,72.63 +2006-09-11,72.43,73.73,71.42,72.50,33897300,72.50 +2006-09-08,73.37,73.57,71.91,72.52,31997200,72.52 +2006-09-07,70.60,73.48,70.25,72.80,45284200,72.80 +2006-09-06,71.08,71.69,69.70,70.03,34789400,70.03 +2006-09-05,68.97,71.50,68.55,71.48,36159200,71.48 +2006-09-01,68.48,68.65,67.82,68.38,14589100,68.38 +2006-08-31,67.28,68.30,66.66,67.85,20524900,67.85 +2006-08-30,67.34,67.82,66.68,66.96,24290800,66.96 +2006-08-29,66.99,67.26,65.12,66.48,33833300,66.48 +2006-08-28,68.50,68.61,66.68,66.98,26362900,66.98 +2006-08-25,67.34,69.05,67.31,68.75,19427100,68.75 +2006-08-24,67.89,68.19,66.27,67.81,23399700,67.81 +2006-08-23,68.00,68.65,66.94,67.31,19152100,67.31 +2006-08-22,66.68,68.32,66.50,67.62,20606000,67.62 +2006-08-21,67.30,67.31,66.15,66.56,18793800,66.56 +2006-08-18,67.71,68.40,67.26,67.91,19155500,67.91 +2006-08-17,68.00,68.66,67.18,67.59,20755300,67.59 +2006-08-16,67.10,68.07,66.33,67.98,27903000,67.98 +2006-08-15,65.34,66.50,64.80,66.45,30762600,66.45 +2006-08-14,64.05,65.22,63.60,63.94,25629300,63.94 +2006-08-11,63.23,64.13,62.58,63.65,27768900,63.65 +2006-08-10,63.25,64.81,62.70,64.07,24920000,64.07 +2006-08-09,65.43,65.60,63.40,63.59,34137100,63.59 +2006-08-08,67.09,67.11,64.51,64.78,35638000,64.78 +2006-08-07,67.72,69.60,66.31,67.21,44482600,67.21 +2006-08-04,67.05,68.61,64.96,68.30,66173800,68.30 +2006-08-03,67.91,70.00,67.81,69.59,30037300,69.59 +2006-08-02,67.65,68.68,67.51,68.16,19670300,68.16 +2006-08-01,67.22,67.93,65.94,67.18,25420200,67.18 +2006-07-31,66.83,68.63,66.28,67.96,31887200,67.96 +2006-07-28,63.94,65.68,63.50,65.59,24696700,65.59 +2006-07-27,64.50,65.02,62.86,63.40,26251600,63.40 +2006-07-26,62.00,64.64,61.68,63.87,32086700,63.87 +2006-07-25,61.78,62.09,60.78,61.93,21038200,61.93 +2006-07-24,61.26,62.10,60.43,61.42,25816300,61.42 +2006-07-21,59.82,61.15,59.64,60.72,31853300,60.72 +2006-07-20,60.96,61.59,59.72,60.50,70433800,60.50 +2006-07-19,52.96,55.08,52.36,54.10,49669400,54.10 +2006-07-18,53.16,53.85,51.85,52.90,35730300,52.90 +2006-07-17,51.73,53.11,51.65,52.37,36590800,52.37 +2006-07-14,52.50,52.89,50.16,50.67,35465600,50.67 +2006-07-13,52.03,54.12,51.41,52.25,44639500,52.25 +2006-07-12,55.17,55.24,52.92,52.96,33118900,52.96 +2006-07-11,55.11,55.99,54.53,55.65,29465100,55.65 +2006-07-10,55.70,56.49,54.50,55.00,18905200,55.00 +2006-07-07,55.48,56.55,54.67,55.40,28548600,55.40 +2006-07-06,57.09,57.40,55.61,55.77,22614600,55.77 +2006-07-05,57.15,57.60,56.56,57.00,18508600,57.00 +2006-07-03,57.52,58.18,57.34,57.95,6956100,57.95 +2006-06-30,57.59,57.75,56.50,57.27,26417700,57.27 +2006-06-29,56.76,59.09,56.39,58.97,31192800,58.97 +2006-06-28,57.29,57.30,55.41,56.02,30382300,56.02 +2006-06-27,59.09,59.22,57.40,57.43,19664700,57.43 +2006-06-26,59.17,59.20,58.37,58.99,16662000,58.99 +2006-06-23,59.72,60.17,58.73,58.83,23578700,58.83 +2006-06-22,58.20,59.75,58.07,59.58,34486900,59.58 +2006-06-21,57.74,58.71,57.30,57.86,30832000,57.86 +2006-06-20,57.61,58.35,57.29,57.47,24034800,57.47 +2006-06-19,57.83,58.18,57.00,57.20,25163400,57.20 +2006-06-16,58.96,59.19,57.52,57.56,29932200,57.56 +2006-06-15,57.30,59.74,56.75,59.38,42513700,59.38 +2006-06-14,58.28,58.78,56.69,57.61,31362000,57.61 +2006-06-13,57.61,59.10,57.36,58.33,38594400,58.33 +2006-06-12,59.40,59.73,56.96,57.00,25635200,57.00 +2006-06-09,61.18,61.56,59.10,59.24,27708500,59.24 +2006-06-08,58.44,60.93,57.15,60.76,49910100,60.76 +2006-06-07,60.10,60.40,58.35,58.56,26803800,58.56 +2006-06-06,60.22,60.63,58.91,59.72,25929900,59.72 +2006-06-05,61.15,61.15,59.97,60.00,21635200,60.00 +2006-06-02,62.99,63.10,60.88,61.66,24492400,61.66 +2006-06-01,59.85,62.28,59.52,62.17,33661000,62.17 +2006-05-31,61.76,61.79,58.69,59.77,45749200,59.77 +2006-05-30,63.29,63.30,61.22,61.22,20121500,61.22 +2006-05-26,64.31,64.56,63.14,63.55,15462500,63.55 +2006-05-25,64.26,64.45,63.29,64.33,16549000,64.33 +2006-05-24,62.99,63.65,61.56,63.34,32715400,63.34 +2006-05-23,64.86,65.19,63.00,63.15,24800500,63.15 +2006-05-22,63.87,63.99,62.77,63.38,25677700,63.38 +2006-05-19,63.26,64.88,62.82,64.51,35209500,64.51 +2006-05-18,65.68,66.26,63.12,63.18,23515800,63.18 +2006-05-17,64.71,65.70,64.07,65.26,26935500,65.26 +2006-05-16,68.10,68.25,64.75,64.98,33455000,64.98 +2006-05-15,67.37,68.38,67.12,67.79,18899200,67.79 +2006-05-12,67.85,68.69,66.86,67.70,22920500,67.70 +2006-05-11,70.79,70.84,67.55,68.15,29024600,68.15 +2006-05-10,71.29,71.33,69.61,70.60,16424600,70.60 +2006-05-09,71.82,72.56,70.62,71.03,18988100,71.03 +2006-05-08,72.99,73.80,71.72,71.89,21244700,71.89 +2006-05-05,71.86,72.25,71.15,71.89,20139700,71.89 +2006-05-04,71.22,72.89,70.46,71.13,30729300,71.13 +2006-05-03,71.83,71.95,70.18,71.14,24535400,71.14 +2006-05-02,70.15,71.98,70.11,71.62,27559400,71.62 +2006-05-01,70.77,71.54,69.16,69.60,26799300,69.60 +2006-04-28,69.38,71.30,69.20,70.39,27144200,70.39 +2006-04-27,67.73,69.86,67.35,69.36,30212400,69.36 +2006-04-26,66.65,68.28,66.40,68.15,25388800,68.15 +2006-04-25,65.96,66.59,65.56,66.17,18895100,66.17 +2006-04-24,66.85,66.92,65.50,65.75,25251000,65.75 +2006-04-21,68.19,68.64,66.47,67.04,28178100,67.04 +2006-04-20,69.51,70.00,66.20,67.63,59535100,67.63 +2006-04-19,66.82,67.00,65.47,65.65,38786900,65.65 +2006-04-18,65.04,66.47,64.79,66.22,28387300,66.22 +2006-04-17,66.51,66.84,64.35,64.81,25783500,64.81 +2006-04-13,66.34,67.44,65.81,66.47,26238500,66.47 +2006-04-12,68.01,68.17,66.30,66.71,26424800,66.71 +2006-04-11,68.99,69.30,67.07,67.99,33547000,67.99 +2006-04-10,70.29,70.93,68.45,68.67,32268400,68.67 +2006-04-07,70.93,71.21,68.47,69.79,55187100,69.79 +2006-04-06,68.30,72.05,68.20,71.24,95134600,71.24 +2006-04-05,64.71,67.21,64.15,67.21,79764600,67.21 +2006-04-04,62.10,62.22,61.05,61.17,33283000,61.17 +2006-04-03,63.67,64.12,62.61,62.65,29135400,62.65 +2006-03-31,63.25,63.61,62.24,62.72,29119900,62.72 +2006-03-30,62.82,63.30,61.53,62.75,49666100,62.75 +2006-03-29,59.13,62.52,57.67,62.33,83815500,62.33 +2006-03-28,59.63,60.14,58.25,58.71,48940100,58.71 +2006-03-27,60.35,61.38,59.40,59.51,39574000,59.51 +2006-03-24,60.25,60.94,59.03,59.96,38285000,59.96 +2006-03-23,61.82,61.90,59.61,60.16,50993800,60.16 +2006-03-22,62.16,63.25,61.27,61.67,48067700,61.67 +2006-03-21,64.29,64.34,61.39,61.81,47991700,61.81 +2006-03-20,65.22,65.46,63.87,63.99,21622900,63.99 +2006-03-17,64.75,65.54,64.11,64.66,29001500,64.66 +2006-03-16,66.85,66.90,64.30,64.31,26772800,64.31 +2006-03-15,67.71,68.04,65.52,66.23,31857000,66.23 +2006-03-14,65.77,67.32,65.50,67.32,22929300,67.32 +2006-03-13,65.05,66.28,64.79,65.68,30756700,65.68 +2006-03-10,64.05,64.49,62.45,63.19,37255100,63.19 +2006-03-09,65.98,66.47,63.81,63.93,28546600,63.93 +2006-03-08,66.29,67.20,65.35,65.66,23330400,65.66 +2006-03-07,65.76,66.90,65.08,66.31,31174200,66.31 +2006-03-06,67.69,67.72,64.94,65.48,32595200,65.48 +2006-03-03,69.40,69.91,67.53,67.72,26345300,67.72 +2006-03-02,68.99,69.99,68.67,69.61,22331200,69.61 +2006-03-01,68.84,69.49,68.02,69.10,27279200,69.10 +2006-02-28,71.58,72.40,68.10,68.49,45249300,68.49 +2006-02-27,71.99,72.12,70.65,70.99,28258600,70.99 +2006-02-24,72.14,72.89,71.20,71.46,19098000,71.46 +2006-02-23,71.79,73.00,71.43,71.75,30604200,71.75 +2006-02-22,69.00,71.67,68.00,71.32,34937100,71.32 +2006-02-21,70.59,70.80,68.68,69.08,27843100,69.08 +2006-02-17,70.30,70.89,69.61,70.29,20571400,70.29 +2006-02-16,69.91,71.01,69.48,70.57,33863400,70.57 +2006-02-15,67.16,69.62,66.75,69.22,41420400,69.22 +2006-02-14,65.10,68.10,65.00,67.64,41462100,67.64 +2006-02-13,66.63,66.75,64.64,64.71,31553500,64.71 +2006-02-10,65.18,67.67,62.90,67.31,62874200,67.31 +2006-02-09,69.10,69.23,64.53,64.95,41063000,64.95 +2006-02-08,68.49,69.08,66.00,68.81,34039800,68.81 +2006-02-07,68.27,69.48,66.68,67.60,49601100,67.60 +2006-02-06,72.02,72.51,66.74,67.30,58991700,67.30 +2006-02-03,72.24,72.79,71.04,71.85,24718700,71.85 +2006-02-02,75.10,75.36,72.05,72.10,25261500,72.10 +2006-02-01,74.95,76.46,74.64,75.42,18613800,75.42 +2006-01-31,75.50,76.34,73.75,75.51,32626500,75.51 +2006-01-30,71.17,76.60,70.87,75.00,49942900,75.00 +2006-01-27,72.95,73.60,71.10,72.03,34066600,72.03 +2006-01-26,74.53,75.43,71.93,72.33,42192400,72.33 +2006-01-25,77.39,77.50,73.25,74.20,45563800,74.20 +2006-01-24,78.76,79.42,75.77,76.04,40794800,76.04 +2006-01-23,76.10,79.56,76.00,77.67,37847500,77.67 +2006-01-20,79.28,80.04,75.83,76.09,40527100,76.09 +2006-01-19,81.25,81.66,78.74,79.04,60566000,79.04 +2006-01-18,83.08,84.05,81.85,82.49,42879900,82.49 +2006-01-17,85.70,86.38,83.87,84.71,29843700,84.71 +2006-01-13,84.99,86.01,84.60,85.59,27725200,85.59 +2006-01-12,84.97,86.40,83.62,84.29,45743200,84.29 +2006-01-11,83.84,84.80,82.59,83.90,53349800,83.90 +2006-01-10,76.25,81.89,75.83,80.86,81423900,80.86 +2006-01-09,76.73,77.20,75.74,76.05,24108600,76.05 +2006-01-06,75.25,76.70,74.55,76.30,25159200,76.30 +2006-01-05,74.83,74.90,73.75,74.38,16050800,74.38 +2006-01-04,75.13,75.98,74.50,74.97,22128700,74.97 +2006-01-03,72.38,74.75,72.25,74.75,28829800,74.75 +2005-12-30,70.91,72.43,70.34,71.89,22295100,71.89 +2005-12-29,73.78,73.82,71.42,71.45,17500900,71.45 +2005-12-28,74.47,74.76,73.32,73.57,14218400,73.57 +2005-12-27,74.00,75.18,73.95,74.23,21092500,74.23 +2005-12-23,74.17,74.26,73.30,73.35,8209200,73.35 +2005-12-22,73.91,74.49,73.60,74.02,13236100,74.02 +2005-12-21,72.60,73.61,72.54,73.50,16990600,73.50 +2005-12-20,71.63,72.38,71.12,72.11,17111000,72.11 +2005-12-19,71.11,72.60,71.04,71.38,18903400,71.38 +2005-12-16,72.14,72.30,71.06,71.11,23970400,71.11 +2005-12-15,72.68,72.86,71.35,72.18,20041500,72.18 +2005-12-14,72.53,73.30,70.27,72.01,51811300,72.01 +2005-12-13,74.85,75.46,74.21,74.98,17636300,74.98 +2005-12-12,74.87,75.35,74.56,74.91,18749800,74.91 +2005-12-09,74.21,74.59,73.35,74.33,19835800,74.33 +2005-12-08,73.20,74.17,72.60,74.08,28231500,74.08 +2005-12-07,74.23,74.46,73.12,73.95,24266600,73.95 +2005-12-06,73.93,74.83,73.35,74.05,30608200,74.05 +2005-12-05,71.95,72.53,71.49,71.82,20845400,71.82 +2005-12-02,72.27,72.74,70.70,72.63,31991500,72.63 +2005-12-01,68.95,71.73,68.81,71.60,29031900,71.60 +2005-11-30,68.43,68.85,67.52,67.82,21274100,67.82 +2005-11-29,69.99,70.30,67.35,68.10,31836900,68.10 +2005-11-28,70.72,71.07,69.07,69.66,36375700,69.66 +2005-11-25,67.66,69.54,67.50,69.34,14107600,69.34 +2005-11-23,66.88,67.98,66.69,67.11,17351900,67.11 +2005-11-22,64.84,66.76,64.52,66.52,19295800,66.52 +2005-11-21,64.82,65.19,63.72,64.96,18275400,64.96 +2005-11-18,65.31,65.43,64.37,64.56,18748700,64.56 +2005-11-17,65.59,65.88,64.25,64.52,24150200,64.52 +2005-11-16,63.15,65.06,63.09,64.95,28018400,64.95 +2005-11-15,61.60,63.08,61.46,62.28,19172900,62.28 +2005-11-14,61.54,61.98,60.91,61.45,13211900,61.45 +2005-11-11,61.54,62.11,61.34,61.54,15194600,61.54 +2005-11-10,60.64,61.20,59.01,61.18,23762300,61.18 +2005-11-09,60.00,61.21,60.00,60.11,19747500,60.11 +2005-11-08,59.95,60.38,59.10,59.90,16920200,59.90 +2005-11-07,60.85,61.67,60.14,60.23,22815400,60.23 +2005-11-04,60.35,61.24,59.62,61.15,31358400,61.15 +2005-11-03,60.26,62.32,60.07,61.85,31585100,61.85 +2005-11-02,57.72,60.00,57.60,59.95,30609300,59.95 +2005-11-01,57.24,58.14,56.87,57.50,26774500,57.50 +2005-10-31,55.20,57.98,54.75,57.59,33601600,57.59 +2005-10-28,56.04,56.43,54.17,54.47,27492400,54.47 +2005-10-27,56.99,57.01,55.41,55.41,14697900,55.41 +2005-10-26,56.28,57.56,55.92,57.03,22556900,57.03 +2005-10-25,56.40,56.85,55.69,56.10,16611700,56.10 +2005-10-24,55.25,56.79,55.09,56.79,21776900,56.79 +2005-10-21,56.84,56.98,55.36,55.66,28454500,55.66 +2005-10-20,54.47,56.50,54.35,56.14,48491500,56.14 +2005-10-19,52.07,54.96,51.21,54.94,36024400,54.94 +2005-10-18,53.25,53.95,52.20,52.21,21771000,52.21 +2005-10-17,53.98,54.23,52.68,53.44,22029800,53.44 +2005-10-14,54.03,54.35,52.79,54.00,36984000,54.00 +2005-10-13,49.44,53.95,49.27,53.74,66627700,53.74 +2005-10-12,48.65,50.30,47.87,49.25,96338800,49.25 +2005-10-11,51.23,51.87,50.40,51.59,43781600,51.59 +2005-10-10,51.76,51.91,50.28,50.37,18125200,50.37 +2005-10-07,51.72,51.93,50.55,51.30,24210100,51.30 +2005-10-06,53.20,53.49,50.87,51.70,27054900,51.70 +2005-10-05,54.33,54.36,52.75,52.78,21813200,52.78 +2005-10-04,54.95,55.35,53.64,53.75,19266400,53.75 +2005-10-03,54.16,54.54,53.68,54.44,18126900,54.44 +2005-09-30,52.33,53.65,51.88,53.61,18986900,53.61 +2005-09-29,51.23,52.59,50.81,52.34,22744500,52.34 +2005-09-28,53.07,53.11,50.59,51.08,40198000,51.08 +2005-09-27,53.92,54.24,53.43,53.44,12203700,53.44 +2005-09-26,54.03,54.56,53.32,53.84,19520100,53.84 +2005-09-23,52.10,53.50,51.84,53.20,19944900,53.20 +2005-09-22,51.88,52.47,51.32,51.90,16561700,51.90 +2005-09-21,52.96,53.05,51.86,52.11,15526700,52.11 +2005-09-20,52.99,53.81,52.92,53.19,29279600,53.19 +2005-09-19,51.05,52.89,51.05,52.64,27990400,52.64 +2005-09-16,50.23,51.21,49.95,51.21,21107300,51.21 +2005-09-15,50.00,50.18,49.33,49.87,14827000,49.87 +2005-09-14,51.06,51.19,49.46,49.61,16943800,49.61 +2005-09-13,51.02,51.29,50.32,50.82,17603000,50.82 +2005-09-12,51.10,51.63,50.58,51.40,16171300,51.40 +2005-09-09,50.07,51.35,49.79,51.31,21987200,51.31 +2005-09-08,49.35,50.12,49.14,49.78,25094300,49.78 +2005-09-07,49.05,49.40,47.92,48.68,34395500,48.68 +2005-09-06,46.70,48.88,46.55,48.80,29236400,48.80 +2005-09-02,46.30,46.80,46.12,46.22,7942100,46.22 +2005-09-01,47.00,47.17,46.09,46.26,12727400,46.26 +2005-08-31,46.86,47.03,46.27,46.89,14391300,46.89 +2005-08-30,45.99,46.79,45.92,46.57,18527200,46.57 +2005-08-29,45.27,46.03,45.26,45.84,9153400,45.84 +2005-08-26,46.12,46.34,45.36,45.74,9323500,45.74 +2005-08-25,46.12,46.49,45.81,46.06,9866200,46.06 +2005-08-24,45.60,47.12,45.59,45.77,20431100,45.77 +2005-08-23,45.85,46.10,45.32,45.74,10557300,45.74 +2005-08-22,46.15,46.75,45.26,45.87,13847600,45.87 +2005-08-19,46.28,46.70,45.77,45.83,13448900,45.83 +2005-08-18,46.91,47.00,45.75,46.30,15805700,46.30 +2005-08-17,46.40,47.44,46.37,47.15,17847300,47.15 +2005-08-16,47.39,47.50,46.21,46.25,19200800,46.25 +2005-08-15,46.48,48.33,46.45,47.68,38811700,47.68 +2005-08-12,43.46,46.22,43.36,46.10,32715600,46.10 +2005-08-11,43.39,44.12,43.25,44.00,9713700,44.00 +2005-08-10,44.00,44.39,43.31,43.38,12890900,43.38 +2005-08-09,42.93,43.89,42.91,43.82,13601400,43.82 +2005-08-08,43.00,43.25,42.61,42.65,6299400,42.65 +2005-08-05,42.49,43.36,42.02,42.99,8640400,42.99 +2005-08-04,42.89,43.00,42.29,42.71,9618000,42.71 +2005-08-03,43.19,43.31,42.77,43.22,9225800,43.22 +2005-08-02,42.89,43.50,42.61,43.19,10602700,43.19 +2005-08-01,42.57,43.08,42.08,42.75,11223200,42.75 +2005-07-29,43.56,44.38,42.26,42.65,20074300,42.65 +2005-07-28,43.85,44.00,43.30,43.80,8975400,43.80 +2005-07-27,43.83,44.07,42.67,43.99,10133900,43.99 +2005-07-26,44.01,44.11,43.36,43.63,9592600,43.63 +2005-07-25,43.99,44.28,43.73,43.81,10522400,43.81 +2005-07-22,43.44,44.00,43.39,44.00,10753800,44.00 +2005-07-21,43.70,44.04,42.90,43.29,14438000,43.29 +2005-07-20,42.86,43.80,42.65,43.63,16192700,43.63 +2005-07-19,41.52,43.23,41.07,43.19,23966500,43.19 +2005-07-18,41.41,42.10,41.37,41.49,20939200,41.49 +2005-07-15,40.97,41.57,40.46,41.55,24560100,41.55 +2005-07-14,40.79,42.01,40.23,40.75,74859300,40.75 +2005-07-13,38.29,38.50,37.90,38.35,24458400,38.35 +2005-07-12,38.23,38.40,37.91,38.24,13822800,38.24 +2005-07-11,38.37,38.65,37.78,38.10,13885300,38.10 +2005-07-08,37.87,38.28,37.47,38.25,10383400,38.25 +2005-07-07,36.81,37.76,36.80,37.63,13704400,37.63 +2005-07-06,37.71,38.16,37.20,37.39,14093800,37.39 +2005-07-05,36.55,38.15,36.50,37.98,16223900,37.98 +2005-07-01,36.83,36.97,36.29,36.50,8928600,36.50 +2005-06-30,36.61,37.16,36.31,36.81,14942500,36.81 +2005-06-29,37.23,37.29,36.12,36.37,16012800,36.37 +2005-06-28,37.49,37.59,37.17,37.31,12510700,37.31 +2005-06-27,36.84,38.10,36.68,37.10,21434700,37.10 +2005-06-24,39.09,39.12,37.68,37.76,14668200,37.76 +2005-06-23,38.83,39.78,38.65,38.89,24080500,38.89 +2005-06-22,38.26,38.60,38.14,38.55,15175900,38.55 +2005-06-21,37.72,38.19,37.38,37.86,13233100,37.86 +2005-06-20,37.85,38.09,37.45,37.61,11561300,37.61 +2005-06-17,38.47,38.54,37.83,38.31,21290200,38.31 +2005-06-16,37.19,38.08,36.82,37.98,19559800,37.98 +2005-06-15,36.87,37.30,36.30,37.13,20119400,37.13 +2005-06-14,35.92,36.15,35.75,36.00,12423100,36.00 +2005-06-13,35.89,36.61,35.82,35.90,15563300,35.90 +2005-06-10,37.40,37.40,35.52,35.81,24247600,35.81 +2005-06-09,37.00,37.94,36.82,37.65,13937700,37.65 +2005-06-08,36.63,37.25,36.57,36.92,14428800,36.92 +2005-06-07,37.60,37.73,36.45,36.54,26616600,36.54 +2005-06-06,38.33,38.63,37.56,37.92,28998800,37.92 +2005-06-03,38.16,38.58,37.77,38.24,34173900,38.24 +2005-06-02,40.05,40.32,39.60,40.04,13356200,40.04 +2005-06-01,39.89,40.76,39.86,40.30,16207600,40.30 +2005-05-31,40.66,40.74,39.58,39.76,14435900,39.76 +2005-05-27,40.64,40.79,40.01,40.56,11286000,40.56 +2005-05-26,39.94,40.94,39.94,40.74,18768600,40.74 +2005-05-25,39.50,39.95,39.32,39.78,14143100,39.78 +2005-05-24,39.45,39.99,39.03,39.70,21195000,39.70 +2005-05-23,37.85,39.90,37.85,39.76,37234800,39.76 +2005-05-20,37.25,37.65,37.19,37.55,16166100,37.55 +2005-05-19,35.78,37.68,35.78,37.55,28327200,37.55 +2005-05-18,35.45,37.56,34.99,35.84,22740100,35.84 +2005-05-17,35.14,35.46,34.54,35.36,21012300,35.36 +2005-05-16,34.56,35.70,34.53,35.55,16939100,35.55 +2005-05-13,34.20,35.23,34.07,34.77,25096900,34.77 +2005-05-12,35.42,35.59,34.00,34.13,34651500,34.13 +2005-05-11,35.20,35.67,33.11,35.61,72927900,35.61 +2005-05-10,36.75,37.25,36.33,36.42,15723700,36.42 +2005-05-09,37.28,37.45,36.75,36.97,12703400,36.97 +2005-05-06,36.89,37.33,36.79,37.24,11651700,37.24 +2005-05-05,37.25,37.27,36.47,36.68,13834500,36.68 +2005-05-04,36.11,37.20,36.10,37.15,16006300,37.15 +2005-05-03,36.40,36.74,36.03,36.21,17740700,36.21 +2005-05-02,36.21,36.65,36.02,36.43,16640000,36.43 +2005-04-29,36.15,36.23,35.22,36.06,23986800,36.06 +2005-04-28,36.29,36.34,35.24,35.54,20539500,35.54 +2005-04-27,35.89,36.36,35.51,35.95,21924600,35.95 +2005-04-26,36.78,37.51,36.12,36.19,28946700,36.19 +2005-04-25,36.49,37.02,36.11,36.98,26659300,36.98 +2005-04-22,36.84,37.00,34.90,35.50,29968900,35.50 +2005-04-21,36.40,37.21,35.90,37.18,27128300,37.18 +2005-04-20,37.66,37.74,35.44,35.51,33754700,35.51 +2005-04-19,36.60,37.44,35.87,37.09,38630100,37.09 +2005-04-18,35.00,36.30,34.00,35.62,47399200,35.62 +2005-04-15,36.62,37.25,35.28,35.35,61717400,35.35 +2005-04-14,38.81,39.56,36.84,37.26,98328300,37.26 +2005-04-13,42.95,42.99,40.39,41.04,48998100,41.04 +2005-04-12,42.49,43.19,42.01,42.66,35037900,42.66 +2005-04-11,44.15,44.25,41.91,41.92,29345100,41.92 +2005-04-08,43.70,44.45,43.54,43.74,23212500,43.74 +2005-04-07,42.33,43.75,42.25,43.56,18106700,43.56 +2005-04-06,42.40,42.81,42.15,42.33,14815200,42.33 +2005-04-05,41.22,42.24,41.09,41.89,19865700,41.89 +2005-04-04,40.99,41.31,40.16,41.09,20714800,41.09 +2005-04-01,42.09,42.18,40.57,40.89,22903000,40.89 +2005-03-31,42.45,42.52,41.59,41.67,22719100,41.67 +2005-03-30,42.07,42.80,41.82,42.80,14105700,42.80 +2005-03-29,42.56,42.83,41.50,41.75,16477000,41.75 +2005-03-28,42.75,42.96,42.47,42.53,9836100,42.53 +2005-03-24,42.91,43.00,42.50,42.50,12596600,42.50 +2005-03-23,42.45,43.40,42.02,42.55,21779400,42.55 +2005-03-22,43.71,43.96,42.68,42.83,19693400,42.83 +2005-03-21,43.29,43.97,42.86,43.70,19326000,43.70 +2005-03-18,43.33,43.44,42.50,42.96,33576800,42.96 +2005-03-17,41.53,42.88,41.32,42.25,28640000,42.25 +2005-03-16,41.21,42.31,40.78,41.18,24921900,41.18 +2005-03-15,40.64,41.14,40.25,40.96,18164600,40.96 +2005-03-14,40.52,40.79,39.52,40.32,21620900,40.32 +2005-03-11,40.21,40.59,39.80,40.27,22601100,40.27 +2005-03-10,39.53,40.26,39.10,39.83,27753900,39.83 +2005-03-09,39.64,40.28,38.83,39.35,47230900,39.35 +2005-03-08,41.90,42.16,40.10,40.53,36480400,40.53 +2005-03-07,42.80,43.25,42.35,42.75,16094000,42.75 +2005-03-04,42.76,43.01,41.85,42.81,27022100,42.81 +2005-03-03,44.37,44.41,41.22,41.79,50416200,41.79 +2005-03-02,44.25,44.89,44.08,44.12,16362900,44.12 +2005-03-01,44.99,45.11,44.16,44.50,16721000,44.50 +2005-02-28,44.68,45.14,43.96,44.86,23271800,44.86 +2005-02-25,89.62,89.91,88.19,88.99,32696800,44.49 +2005-02-24,88.48,89.31,87.73,88.93,54251000,44.47 +2005-02-23,86.72,88.45,85.55,88.23,48042200,44.12 +2005-02-22,86.30,88.30,85.29,85.29,43546200,42.65 +2005-02-18,87.74,87.86,86.25,86.81,41544800,43.40 +2005-02-17,90.65,90.88,87.45,87.81,54231200,43.90 +2005-02-16,88.15,90.20,87.35,90.13,58544400,45.06 +2005-02-15,86.66,89.08,86.00,88.41,82579200,44.21 +2005-02-14,82.73,84.79,82.05,84.63,45409400,42.31 +2005-02-11,79.86,81.76,78.94,81.21,42894800,40.60 +2005-02-10,78.72,79.28,76.66,78.36,39036400,39.18 +2005-02-09,81.04,81.99,78.10,78.74,42552000,39.37 +2005-02-08,79.07,81.38,78.79,80.90,31786400,40.45 +2005-02-07,78.93,79.35,77.50,78.94,18730600,39.47 +2005-02-04,77.87,78.93,77.53,78.84,20127000,39.42 +2005-02-03,79.10,79.43,77.33,77.81,26130400,38.90 +2005-02-02,77.95,79.91,77.69,79.63,36430800,39.81 +2005-02-01,77.05,77.77,76.58,77.53,24228400,38.76 +2005-01-31,74.58,77.89,74.51,76.90,60039200,38.45 +2005-01-28,72.62,73.98,72.44,73.98,28629000,36.99 +2005-01-27,72.16,72.92,71.55,72.64,17722400,36.32 +2005-01-26,72.66,72.75,71.22,72.25,26410600,36.12 +2005-01-25,71.37,72.84,70.94,72.05,34615400,36.03 +2005-01-24,70.98,71.78,70.55,70.76,30058200,35.38 +2005-01-21,71.31,71.60,70.00,70.49,32547600,35.24 +2005-01-20,69.65,71.27,69.47,70.46,32675800,35.23 +2005-01-19,70.49,71.46,69.75,69.88,26853400,34.94 +2005-01-18,69.85,70.70,67.75,70.65,35945000,35.33 +2005-01-14,70.25,71.72,69.19,70.20,63240800,35.10 +2005-01-13,73.71,74.42,69.73,69.80,113025600,34.90 +2005-01-12,65.45,65.90,63.30,65.46,68560800,32.73 +2005-01-11,68.25,69.15,64.14,64.56,93272400,32.28 +2005-01-10,69.83,70.70,67.88,68.96,61618200,34.48 +2005-01-07,65.00,69.63,64.75,69.25,79551800,34.62 +2005-01-06,64.67,64.91,63.33,64.55,25198400,32.28 +2005-01-05,64.46,65.25,64.05,64.50,24301200,32.25 +2005-01-04,63.79,65.47,62.97,63.94,39171800,31.97 +2005-01-03,64.78,65.11,62.60,63.29,24714000,31.65 +2004-12-31,64.89,65.00,64.03,64.40,9949600,32.20 +2004-12-30,64.81,65.03,64.22,64.80,12333600,32.40 +2004-12-29,63.81,64.98,63.57,64.44,16055800,32.22 +2004-12-28,63.30,64.25,62.05,64.18,21848400,32.09 +2004-12-27,64.80,65.15,62.88,63.16,19981800,31.58 +2004-12-23,63.75,64.25,63.60,64.01,8783200,32.01 +2004-12-22,63.66,64.36,63.40,63.75,20208200,31.88 +2004-12-21,63.56,63.77,61.60,63.69,38014800,31.84 +2004-12-20,65.47,66.00,61.76,62.72,41718800,31.36 +2004-12-17,66.84,67.04,64.90,64.99,27982000,32.49 +2004-12-16,66.15,67.50,66.05,66.60,40218400,33.30 +2004-12-15,65.24,65.46,64.66,65.26,14227200,32.63 +2004-12-14,65.40,65.88,65.02,65.29,14847200,32.65 +2004-12-13,65.62,65.90,64.60,64.91,14108600,32.46 +2004-12-10,65.03,66.05,64.70,65.15,27706200,32.58 +2004-12-09,62.81,64.40,62.07,63.99,26482200,32.00 +2004-12-08,63.08,64.43,62.05,63.28,24710800,31.64 +2004-12-07,65.93,66.73,62.56,62.89,37746400,31.44 +2004-12-06,64.25,66.24,62.95,65.78,44568600,32.89 +2004-12-03,64.53,65.00,61.75,62.68,44244600,31.34 +2004-12-02,66.13,66.90,64.66,65.21,35265800,32.60 +2004-12-01,67.79,67.95,66.27,67.79,28591200,33.90 +2004-11-30,68.79,68.79,67.05,67.05,36732800,33.53 +2004-11-29,68.95,69.57,67.41,68.44,61175600,34.22 +2004-11-26,65.35,65.76,64.34,64.55,19648000,32.28 +2004-11-24,61.69,65.20,61.55,64.05,49671000,32.03 +2004-11-23,62.30,62.45,61.05,61.27,32551800,30.64 +2004-11-22,61.80,64.00,57.90,61.35,91721800,30.67 +2004-11-19,55.49,56.91,54.50,55.17,27331400,27.58 +2004-11-18,54.30,55.45,54.29,55.39,16398200,27.69 +2004-11-17,55.19,55.45,54.22,54.90,14205400,27.45 +2004-11-16,55.16,55.20,54.48,54.94,10539400,27.47 +2004-11-15,55.20,55.46,54.34,55.24,13430200,27.62 +2004-11-12,55.01,55.69,54.84,55.50,14132200,27.75 +2004-11-11,54.95,55.43,54.23,55.30,14546400,27.65 +2004-11-10,53.95,55.39,53.91,54.75,18167000,27.38 +2004-11-09,54.23,54.55,53.38,54.05,16991600,27.02 +2004-11-08,54.27,55.45,53.86,54.38,18818600,27.19 +2004-11-05,54.86,55.00,52.04,54.72,43037400,27.36 +2004-11-04,55.03,55.55,54.37,54.45,33165200,27.23 +2004-11-03,54.37,56.11,53.99,55.31,43006200,27.66 +2004-11-02,52.40,54.08,52.40,53.50,26071000,26.75 +2004-11-01,52.50,53.26,52.04,52.45,21501800,26.23 +2004-10-29,51.84,53.20,51.80,52.40,28936400,26.20 +2004-10-28,49.98,52.22,49.50,52.19,30866600,26.09 +2004-10-27,48.51,50.62,48.17,50.30,42624800,25.15 +2004-10-26,47.45,48.05,46.97,47.97,21227200,23.99 +2004-10-25,47.20,47.84,47.07,47.55,14023000,23.77 +2004-10-22,47.54,47.67,47.02,47.41,17252400,23.70 +2004-10-21,47.48,48.13,47.36,47.94,25875200,23.97 +2004-10-20,47.18,47.60,46.65,47.47,21611000,23.74 +2004-10-19,48.10,48.35,47.31,47.42,28642600,23.71 +2004-10-18,44.70,47.75,44.70,47.75,42884000,23.88 +2004-10-15,44.88,45.61,44.19,45.50,36826000,22.75 +2004-10-14,43.19,45.75,42.55,44.98,98872400,22.49 +2004-10-13,38.87,39.76,38.74,39.75,41536000,19.88 +2004-10-12,38.50,38.58,37.65,38.29,16435400,19.15 +2004-10-11,38.80,39.06,38.20,38.59,11566800,19.30 +2004-10-08,39.56,39.77,38.84,39.06,12829600,19.53 +2004-10-07,40.54,40.93,39.46,39.62,15219600,19.81 +2004-10-06,39.50,40.76,39.47,40.64,15939400,20.32 +2004-10-05,38.56,39.67,38.40,39.37,14505800,19.68 +2004-10-04,39.18,39.18,38.75,38.79,20503000,19.40 +2004-10-01,39.12,39.19,38.58,38.67,16621600,19.33 +2004-09-30,39.00,39.27,38.45,38.75,15179000,19.38 +2004-09-29,37.93,38.86,37.82,38.68,9768200,19.34 +2004-09-28,37.46,38.29,37.45,38.04,12613800,19.02 +2004-09-27,36.95,37.98,36.83,37.53,14197000,18.76 +2004-09-24,37.45,38.00,37.15,37.29,13196000,18.65 +2004-09-23,37.04,37.50,36.93,37.27,14193000,18.64 +2004-09-22,38.10,38.14,36.81,36.92,14346000,18.46 +2004-09-21,37.75,38.87,37.46,38.01,13809000,19.00 +2004-09-20,36.88,37.98,36.87,37.71,8750000,18.85 +2004-09-17,36.55,37.38,36.40,37.14,17939600,18.57 +2004-09-16,35.20,36.76,35.08,36.35,17925600,18.17 +2004-09-15,35.36,35.48,34.80,35.20,8309600,17.60 +2004-09-14,35.24,35.55,34.78,35.49,9100800,17.75 +2004-09-13,35.88,36.07,35.32,35.59,10070600,17.80 +2004-09-10,35.66,36.23,35.46,35.87,11714800,17.93 +2004-09-09,36.10,36.30,35.28,35.70,16476400,17.85 +2004-09-08,35.70,36.57,35.68,36.35,12268800,18.17 +2004-09-07,35.40,36.19,35.23,35.76,10784200,17.88 +2004-09-03,35.01,35.92,35.01,35.23,10481000,17.61 +2004-09-02,35.50,35.81,34.83,35.66,14511600,17.83 +2004-09-01,34.30,35.99,34.19,35.86,18418800,17.93 +2004-08-31,34.07,34.95,34.00,34.49,13448600,17.25 +2004-08-30,34.00,34.72,33.96,34.12,7790800,17.06 +2004-08-27,34.68,34.76,34.00,34.35,13886200,17.17 +2004-08-26,33.04,35.18,32.74,34.66,34137800,17.33 +2004-08-25,31.87,33.15,31.73,33.05,18057800,16.52 +2004-08-24,31.26,31.95,31.19,31.95,13362000,15.98 +2004-08-23,30.86,31.27,30.60,31.08,9095000,15.54 +2004-08-20,30.71,30.99,30.49,30.80,11313600,15.40 +2004-08-19,31.51,31.86,30.36,30.71,13890000,15.35 +2004-08-18,30.51,31.85,30.49,31.74,13023400,15.87 +2004-08-17,30.58,31.13,30.35,30.87,11536400,15.44 +2004-08-16,31.00,31.72,30.64,30.78,15559800,15.39 +2004-08-13,30.60,31.28,30.40,30.84,11716000,15.42 +2004-08-12,30.45,30.85,30.28,30.37,8078600,15.19 +2004-08-11,31.10,31.13,30.26,31.01,11514000,15.51 +2004-08-10,30.39,31.54,30.35,31.52,12537000,15.76 +2004-08-09,29.85,30.45,29.81,30.30,10387400,15.15 +2004-08-06,30.90,31.10,29.70,29.78,17581800,14.89 +2004-08-05,31.81,32.30,31.25,31.39,8732200,15.69 +2004-08-04,31.19,32.12,31.17,31.79,9874600,15.90 +2004-08-03,31.45,31.72,31.15,31.29,7558200,15.65 +2004-08-02,31.18,32.20,31.13,31.58,13039000,15.79 +2004-07-30,32.65,33.00,32.00,32.34,8679400,16.17 +2004-07-29,32.47,32.82,32.13,32.64,7934200,16.32 +2004-07-28,32.31,32.41,31.16,32.27,10180400,16.14 +2004-07-27,31.80,32.75,31.57,32.43,15178800,16.22 +2004-07-26,30.85,31.45,30.78,31.26,14069000,15.63 +2004-07-23,31.53,31.75,30.48,30.70,9770400,15.35 +2004-07-22,31.25,31.73,31.06,31.68,11932800,15.84 +2004-07-21,32.42,32.71,31.34,31.62,10759200,15.81 +2004-07-20,31.95,32.20,31.55,32.20,11562400,16.10 +2004-07-19,32.01,32.22,31.66,31.97,19041800,15.98 +2004-07-16,32.80,32.92,32.12,32.20,17442200,16.10 +2004-07-15,32.66,33.63,32.11,32.93,63133000,16.47 +2004-07-14,28.86,29.97,28.74,29.58,29850000,14.79 +2004-07-13,29.25,29.60,29.02,29.22,11292000,14.61 +2004-07-12,30.02,30.04,28.93,29.14,18272200,14.57 +2004-07-09,30.27,30.50,30.03,30.03,7459400,15.02 +2004-07-08,30.13,30.68,29.95,30.14,8335000,15.07 +2004-07-07,30.85,31.36,30.13,30.39,14214000,15.19 +2004-07-06,31.27,31.42,30.80,30.95,12463600,15.48 +2004-07-02,30.48,31.18,29.73,31.08,32524400,15.54 +2004-07-01,32.10,32.48,31.90,32.30,12212200,16.15 +2004-06-30,32.56,32.97,31.89,32.54,13323000,16.27 +2004-06-29,32.07,32.99,31.41,32.50,21091200,16.25 +2004-06-28,34.18,34.19,32.21,32.49,18610600,16.25 +2004-06-25,33.07,33.70,33.00,33.70,11551000,16.85 +2004-06-24,33.51,33.70,32.98,33.18,9018400,16.59 +2004-06-23,33.00,33.83,32.89,33.70,13959600,16.85 +2004-06-22,32.30,33.09,32.29,33.00,12875400,16.50 +2004-06-21,33.12,33.50,32.12,32.33,13936200,16.17 +2004-06-18,32.66,33.41,32.43,32.91,14509000,16.45 +2004-06-17,32.56,33.13,32.21,32.81,19690000,16.41 +2004-06-16,30.66,33.32,30.53,32.74,32487200,16.37 +2004-06-15,30.54,31.14,30.26,30.69,15879800,15.35 +2004-06-14,30.65,30.68,29.50,30.12,8713800,15.06 +2004-06-10,30.20,30.97,30.20,30.74,9199200,15.37 +2004-06-09,30.09,30.71,30.00,30.20,12471600,15.10 +2004-06-08,29.99,30.44,29.83,30.35,14843600,15.18 +2004-06-07,29.04,29.98,28.81,29.81,10567000,14.90 +2004-06-04,28.56,29.25,28.51,28.78,14254000,14.39 +2004-06-03,28.72,28.99,28.29,28.40,8961800,14.20 +2004-06-02,28.03,29.17,27.80,28.92,11382600,14.46 +2004-06-01,27.79,28.20,27.61,28.06,6504800,14.03 +2004-05-28,28.08,28.27,27.80,28.06,5204200,14.03 +2004-05-27,28.46,28.60,27.82,28.17,8427600,14.09 +2004-05-26,28.33,28.78,28.00,28.51,11506000,14.26 +2004-05-25,27.50,28.51,27.29,28.41,11427800,14.20 +2004-05-24,27.29,27.90,27.11,27.34,8414400,13.67 +2004-05-21,26.90,27.20,26.73,27.11,6424800,13.56 +2004-05-20,26.63,27.00,26.47,26.71,7010600,13.35 +2004-05-19,27.40,27.50,26.42,26.47,13414000,13.23 +2004-05-18,26.97,27.29,26.80,27.06,7359400,13.53 +2004-05-17,26.70,27.06,26.36,26.64,10730200,13.32 +2004-05-14,27.25,27.32,26.45,27.06,9207200,13.53 +2004-05-13,27.10,27.72,26.90,27.19,8209000,13.60 +2004-05-12,26.79,27.34,26.24,27.30,8765000,13.65 +2004-05-11,26.40,27.19,26.40,27.14,10899000,13.57 +2004-05-10,26.27,26.60,25.94,26.28,8927800,13.14 +2004-05-07,26.55,27.57,26.55,26.67,14965600,13.34 +2004-05-06,26.40,26.75,25.90,26.58,9412800,13.29 +2004-05-05,26.20,26.75,25.96,26.65,8503800,13.32 +2004-05-04,25.97,26.55,25.50,26.14,9999400,13.07 +2004-05-03,26.00,26.33,25.74,26.07,10629800,13.03 +2004-04-30,26.71,26.96,25.49,25.78,16660800,12.89 +2004-04-29,26.45,27.00,25.98,26.77,16456800,13.39 +2004-04-28,26.82,27.01,26.34,26.45,8256000,13.23 +2004-04-27,27.24,27.44,26.69,26.94,10138000,13.47 +2004-04-26,27.58,27.64,27.00,27.13,8254600,13.56 +2004-04-23,27.70,28.00,27.05,27.70,11279600,13.85 +2004-04-22,27.56,28.18,27.11,27.78,12306600,13.89 +2004-04-21,27.60,28.12,27.37,27.73,11638400,13.86 +2004-04-20,28.21,28.41,27.56,27.73,12661400,13.86 +2004-04-19,28.12,28.75,27.83,28.35,25441200,14.18 +2004-04-16,29.15,29.31,28.50,29.18,14390400,14.59 +2004-04-15,28.82,29.58,28.16,29.30,62908800,14.65 +2004-04-14,26.74,27.07,26.31,26.64,22847600,13.32 +2004-04-13,27.98,28.03,26.84,26.93,15585600,13.47 +2004-04-12,27.50,28.10,27.49,28.04,8233600,14.02 +2004-04-08,27.88,28.00,27.20,27.53,8604200,13.77 +2004-04-07,27.61,27.70,26.92,27.31,9111400,13.65 +2004-04-06,27.71,28.15,27.43,27.83,9214000,13.91 +2004-04-05,27.48,28.37,27.44,28.32,13774000,14.16 +2004-04-02,27.75,27.93,27.23,27.50,9802800,13.75 +2004-04-01,26.89,27.27,26.62,27.11,11369000,13.56 +2004-03-31,27.92,27.98,26.95,27.04,13956200,13.52 +2004-03-30,27.74,27.95,27.34,27.92,12845600,13.96 +2004-03-29,27.37,27.99,27.20,27.91,12526000,13.95 +2004-03-26,27.00,27.36,26.91,27.04,14996200,13.52 +2004-03-25,26.14,26.91,25.89,26.87,20230200,13.44 +2004-03-24,25.27,25.75,25.27,25.50,15293400,12.75 +2004-03-23,25.88,26.00,25.22,25.29,13768400,12.65 +2004-03-22,25.37,26.17,25.25,25.86,14965400,12.93 +2004-03-19,25.56,26.94,25.54,25.86,14592000,12.93 +2004-03-18,25.94,26.06,25.59,25.67,11467200,12.84 +2004-03-17,25.96,26.38,25.78,26.19,14694000,13.10 +2004-03-16,26.55,26.61,25.39,25.82,21622600,12.91 +2004-03-15,27.03,27.35,26.26,26.45,17204200,13.23 +2004-03-12,27.32,27.78,27.17,27.56,11758000,13.78 +2004-03-11,27.27,28.04,27.09,27.15,21280400,13.57 +2004-03-10,27.04,28.14,26.94,27.68,35963000,13.84 +2004-03-09,25.90,27.23,25.75,27.10,22084400,13.55 +2004-03-08,26.62,26.79,25.80,26.00,18674000,13.00 +2004-03-05,24.95,27.49,24.90,26.74,55021400,13.37 +2004-03-04,23.93,25.22,23.91,25.16,23579400,12.58 +2004-03-03,23.60,24.19,23.60,23.92,8040400,11.96 +2004-03-02,24.00,24.10,23.77,23.81,9167400,11.90 +2004-03-01,24.10,24.30,23.87,24.02,11488600,12.01 +2004-02-27,22.96,24.02,22.95,23.92,16744200,11.96 +2004-02-26,22.88,23.18,22.80,23.04,7086000,11.52 +2004-02-25,22.28,22.90,22.21,22.81,9867000,11.40 +2004-02-24,22.14,22.74,22.00,22.36,9252000,11.18 +2004-02-23,22.34,22.46,21.89,22.19,6931400,11.10 +2004-02-20,22.50,22.51,22.21,22.40,9914400,11.20 +2004-02-19,23.33,23.64,22.41,22.47,11538600,11.23 +2004-02-18,23.18,23.44,23.05,23.26,5058400,11.63 +2004-02-17,23.10,23.49,23.10,23.16,6105600,11.58 +2004-02-13,23.85,24.10,22.83,23.00,11285000,11.50 +2004-02-12,23.61,23.99,23.60,23.73,6571000,11.86 +2004-02-11,23.09,23.87,23.05,23.80,12448000,11.90 +2004-02-10,22.62,23.12,22.44,22.98,9119400,11.49 +2004-02-09,22.62,22.86,22.50,22.67,6723600,11.34 +2004-02-06,22.45,22.89,22.40,22.71,6905000,11.35 +2004-02-05,21.82,22.91,21.81,22.42,12601600,11.21 +2004-02-04,22.00,22.09,21.70,21.79,10912600,10.90 +2004-02-03,22.30,22.40,22.00,22.26,6457600,11.13 +2004-02-02,22.46,22.81,22.08,22.32,10265400,11.16 +2004-01-30,22.65,22.87,22.42,22.56,6617800,11.28 +2004-01-29,22.63,22.80,22.19,22.68,7596400,11.34 +2004-01-28,22.84,23.38,22.41,22.52,9835800,11.26 +2004-01-27,23.04,23.25,22.80,23.07,10966800,11.53 +2004-01-26,22.46,23.06,22.43,23.01,9688200,11.51 +2004-01-23,22.42,22.74,22.25,22.56,8113200,11.28 +2004-01-22,22.56,22.83,22.18,22.18,7321600,11.09 +2004-01-21,22.70,22.97,22.43,22.61,8095000,11.31 +2004-01-20,22.67,22.80,22.25,22.73,11283800,11.36 +2004-01-16,22.89,23.04,22.61,22.72,13315000,11.36 +2004-01-15,22.91,23.40,22.50,22.85,36364600,11.43 +2004-01-14,24.40,24.54,23.78,24.20,22144400,12.10 +2004-01-13,24.70,24.84,23.86,24.12,24250600,12.06 +2004-01-12,23.25,24.00,23.10,23.73,17412400,11.86 +2004-01-09,23.23,24.13,22.79,23.00,15266400,11.50 +2004-01-08,22.84,23.73,22.65,23.36,16439400,11.68 +2004-01-07,22.10,22.83,21.93,22.59,20959800,11.30 +2004-01-06,22.25,22.42,21.71,22.09,18191000,11.05 +2004-01-05,21.42,22.39,21.42,22.17,14107800,11.09 +2004-01-02,21.55,21.75,21.18,21.28,5165800,10.64 +2003-12-31,21.35,21.53,21.18,21.37,6230400,10.69 +2003-12-30,21.18,21.50,21.15,21.28,7316200,10.64 +2003-12-29,20.91,21.16,20.86,21.15,8337800,10.57 +2003-12-26,20.35,20.91,20.34,20.78,3703400,10.39 +2003-12-24,19.72,20.59,19.65,20.41,6338400,10.20 +2003-12-23,19.92,19.95,19.60,19.81,11017800,9.90 +2003-12-22,19.65,19.89,19.25,19.85,13466600,9.93 +2003-12-19,20.19,20.42,19.62,19.70,16198600,9.85 +2003-12-18,19.90,20.18,19.90,20.04,11818400,10.02 +2003-12-17,20.08,20.13,19.79,19.88,9795000,9.94 +2003-12-16,20.19,20.49,20.01,20.12,13355600,10.06 +2003-12-15,21.49,21.49,20.07,20.17,13889600,10.09 +2003-12-12,21.32,21.32,20.70,20.89,6881200,10.44 +2003-12-11,20.25,21.34,20.21,21.21,6540600,10.60 +2003-12-10,20.45,20.61,19.96,20.38,9690600,10.19 +2003-12-09,21.17,21.25,20.40,20.45,4826600,10.23 +2003-12-08,20.78,21.08,20.41,21.05,5294200,10.52 +2003-12-05,20.90,21.15,20.73,20.85,6649200,10.43 +2003-12-04,20.94,21.17,20.77,21.15,6355000,10.57 +2003-12-03,21.54,21.84,20.96,21.03,6832000,10.52 +2003-12-02,21.60,21.90,21.41,21.54,7332000,10.77 +2003-12-01,21.04,21.85,21.00,21.71,12912000,10.85 +2003-11-28,20.78,21.07,20.52,20.91,2717800,10.45 +2003-11-26,20.89,21.15,20.25,20.72,8754600,10.36 +2003-11-25,21.23,21.25,20.61,20.68,9594800,10.34 +2003-11-24,20.50,21.27,20.45,21.15,13636600,10.57 +2003-11-21,20.34,20.58,19.85,20.28,8637000,10.14 +2003-11-20,20.10,21.08,20.10,20.38,8556800,10.19 +2003-11-19,20.56,20.65,20.26,20.42,12306600,10.21 +2003-11-18,21.21,21.34,20.35,20.41,9542600,10.20 +2003-11-17,21.35,21.37,20.95,21.13,8152000,10.56 +2003-11-14,22.48,22.61,21.28,21.46,8466000,10.73 +2003-11-13,22.07,22.56,21.92,22.42,7599000,11.21 +2003-11-12,21.48,22.72,21.48,22.33,10714400,11.16 +2003-11-11,21.90,22.02,21.48,21.54,7681200,10.77 +2003-11-10,22.45,22.65,21.84,21.90,8367000,10.95 +2003-11-07,23.19,23.24,22.45,22.50,7505200,11.25 +2003-11-06,22.91,23.15,22.65,23.12,14181200,11.56 +2003-11-05,22.82,23.13,22.47,23.03,11516800,11.52 +2003-11-04,23.07,23.10,22.59,22.91,8901200,11.45 +2003-11-03,22.83,23.30,22.78,23.15,10815800,11.57 +2003-10-31,23.30,23.35,22.78,22.89,7791200,11.44 +2003-10-30,23.99,24.00,22.87,23.09,9305600,11.55 +2003-10-29,23.51,23.90,23.34,23.69,9538600,11.85 +2003-10-28,22.56,23.77,22.40,23.72,8989800,11.86 +2003-10-27,22.75,22.89,22.49,22.60,5786200,11.30 +2003-10-24,22.56,22.85,22.23,22.60,7852000,11.30 +2003-10-23,22.73,23.15,22.59,22.99,5900400,11.49 +2003-10-22,22.94,23.20,22.68,22.76,5771400,11.38 +2003-10-21,23.31,23.40,22.75,23.18,6302200,11.59 +2003-10-20,22.60,23.34,22.38,23.22,9969000,11.61 +2003-10-17,23.38,23.49,22.43,22.75,12850400,11.38 +2003-10-16,23.80,23.84,22.41,23.25,34845800,11.62 +2003-10-15,24.85,25.01,24.58,24.82,21789400,12.41 +2003-10-14,24.32,24.74,24.19,24.55,9836400,12.27 +2003-10-13,23.73,24.41,23.72,24.35,9995200,12.18 +2003-10-10,23.50,23.81,23.37,23.68,6244200,11.84 +2003-10-09,23.30,23.67,22.79,23.45,12419600,11.73 +2003-10-08,23.25,23.54,22.73,23.06,15309600,11.53 +2003-10-07,22.05,23.41,21.91,23.22,14934800,11.61 +2003-10-06,21.67,22.33,21.58,22.29,9583200,11.15 +2003-10-03,20.99,21.86,20.88,21.69,10700000,10.85 +2003-10-02,20.80,20.80,20.28,20.57,7287800,10.28 +2003-10-01,20.71,21.10,20.19,20.79,8432600,10.40 +2003-09-30,21.09,21.22,20.44,20.72,10193800,10.36 +2003-09-29,21.49,21.67,20.65,21.30,13060800,10.65 +2003-09-26,20.30,21.70,20.15,20.69,12401800,10.35 +2003-09-25,21.34,21.37,20.25,20.43,20513600,10.22 +2003-09-24,22.21,22.31,21.08,21.32,10760200,10.66 +2003-09-23,22.02,22.46,21.88,22.43,4730400,11.22 +2003-09-22,22.18,22.50,21.92,22.08,6422200,11.04 +2003-09-19,22.88,23.05,22.43,22.58,7355600,11.29 +2003-09-18,22.10,22.99,21.95,22.88,9032400,11.44 +2003-09-17,22.37,22.38,21.85,22.12,10335600,11.06 +2003-09-16,22.21,22.69,22.20,22.36,9607400,11.18 +2003-09-15,22.81,22.90,22.12,22.21,8101600,11.10 +2003-09-12,22.51,23.14,22.31,23.10,6428200,11.55 +2003-09-11,22.25,22.79,22.10,22.56,7631600,11.28 +2003-09-10,22.25,22.61,22.11,22.18,8031800,11.09 +2003-09-09,22.53,22.67,22.12,22.37,6441800,11.19 +2003-09-08,22.48,22.79,22.47,22.74,5973000,11.37 +2003-09-05,22.73,23.15,22.41,22.50,8576200,11.25 +2003-09-04,23.16,23.25,22.77,22.83,7135000,11.41 +2003-09-03,22.80,23.32,22.76,22.95,9601000,11.48 +2003-09-02,22.66,22.90,22.40,22.85,8647600,11.43 +2003-08-29,22.20,22.85,22.05,22.61,9398400,11.31 +2003-08-28,21.33,22.22,21.33,22.19,11415200,11.10 +2003-08-27,20.91,21.48,20.66,21.48,8060800,10.74 +2003-08-26,20.75,21.07,20.35,21.05,5891400,10.52 +2003-08-25,20.78,20.91,20.49,20.86,4920800,10.43 +2003-08-22,21.81,22.00,20.64,20.88,8938000,10.44 +2003-08-21,21.03,21.71,20.95,21.68,9118800,10.84 +2003-08-20,20.18,21.27,20.14,21.01,9757600,10.51 +2003-08-19,20.37,20.45,20.00,20.32,4774600,10.16 +2003-08-18,19.86,20.41,19.72,20.34,6884800,10.17 +2003-08-15,20.02,20.07,19.66,19.71,4495200,9.85 +2003-08-14,20.21,20.33,19.94,19.97,6885000,9.98 +2003-08-13,19.86,20.34,19.58,20.18,10146400,10.09 +2003-08-12,19.76,19.80,19.46,19.70,5872800,9.85 +2003-08-11,19.82,19.93,19.51,19.66,4901000,9.83 +2003-08-08,20.11,20.13,19.60,19.64,4916400,9.82 +2003-08-07,19.73,20.09,19.42,19.93,6227800,9.97 +2003-08-06,20.06,20.17,19.50,19.63,8766600,9.81 +2003-08-05,21.35,21.40,20.10,20.38,8908600,10.19 +2003-08-04,20.53,21.50,20.28,21.21,8218400,10.60 +2003-08-01,21.00,21.27,20.64,20.73,5343000,10.36 +2003-07-31,20.74,21.35,20.57,21.08,10766600,10.54 +2003-07-30,20.77,20.90,20.17,20.28,6199800,10.14 +2003-07-29,20.99,... [truncated message content] |
From: <md...@us...> - 2008-02-29 14:04:53
|
Revision: 4991 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4991&view=rev Author: mdboom Date: 2008-02-29 06:04:48 -0800 (Fri, 29 Feb 2008) Log Message: ----------- Fix classic Wx toolbar pan and zoom functions (Thanks Jeff Peery) Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_wx.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-02-29 13:13:27 UTC (rev 4990) +++ branches/v0_91_maint/CHANGELOG 2008-02-29 14:04:48 UTC (rev 4991) @@ -1,3 +1,6 @@ +2008-02-29 Fix class Wx toolbar pan and zoom functions (Thanks Jeff + Peery) - MGD + 2008-02-16 Added some new rec array functionality to mlab (rec_summarize, rec2txt and rec_groupby). See examples/rec_groupby_demo.py. Thanks to Tim M for rec2txt. Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_wx.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_wx.py 2008-02-29 13:13:27 UTC (rev 4990) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_wx.py 2008-02-29 14:04:48 UTC (rev 4991) @@ -999,7 +999,7 @@ def print_bmp(self, filename, *args, **kwargs): return self._print_image(filename, wx.BITMAP_TYPE_BMP, *args, **kwargs) - + def print_jpeg(self, filename, *args, **kwargs): return self._print_image(filename, wx.BITMAP_TYPE_JPEG, *args, **kwargs) print_jpg = print_jpeg @@ -1009,14 +1009,14 @@ def print_png(self, filename, *args, **kwargs): return self._print_image(filename, wx.BITMAP_TYPE_PNG, *args, **kwargs) - + def print_tiff(self, filename, *args, **kwargs): return self._print_image(filename, wx.BITMAP_TYPE_TIF, *args, **kwargs) print_tif = print_tiff def print_xpm(self, filename, *args, **kwargs): return self._print_image(filename, wx.BITMAP_TYPE_XPM, *args, **kwargs) - + def _print_image(self, filename, filetype, *args, **kwargs): origBitmap = self.bitmap @@ -1055,7 +1055,7 @@ def get_default_filetype(self): return 'png' - + def realize(self): """ This method will be called when the system is ready to draw, @@ -1890,28 +1890,28 @@ DEBUG_MSG("panx()", 1, self) for a in self._active: - a.panx(direction) + a.xaxis.pan(direction) self.canvas.draw() self.canvas.Refresh(eraseBackground=False) def pany(self, direction): DEBUG_MSG("pany()", 1, self) for a in self._active: - a.pany(direction) + a.yaxis.pan(direction) self.canvas.draw() self.canvas.Refresh(eraseBackground=False) def zoomx(self, in_out): DEBUG_MSG("zoomx()", 1, self) for a in self._active: - a.zoomx(in_out) + a.xaxis.zoom(in_out) self.canvas.draw() self.canvas.Refresh(eraseBackground=False) def zoomy(self, in_out): DEBUG_MSG("zoomy()", 1, self) for a in self._active: - a.zoomy(in_out) + a.yaxis.zoom(in_out) self.canvas.draw() self.canvas.Refresh(eraseBackground=False) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jo...@us...> - 2008-03-23 17:44:19
|
Revision: 5018 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5018&view=rev Author: jouni Date: 2008-03-23 10:44:11 -0700 (Sun, 23 Mar 2008) Log Message: ----------- Fix a pdf backend bug which sometimes caused the outermost gsave to not be balanced with a grestore. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-03-21 19:52:46 UTC (rev 5017) +++ branches/v0_91_maint/CHANGELOG 2008-03-23 17:44:11 UTC (rev 5018) @@ -1,3 +1,6 @@ +2008-03-23 Fix a pdf backend bug which sometimes caused the outermost + gsave to not be balanced with a grestore. - JKS + 2008-02-29 Fix class Wx toolbar pan and zoom functions (Thanks Jeff Peery) - MGD Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py 2008-03-21 19:52:46 UTC (rev 5017) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_pdf.py 2008-03-23 17:44:11 UTC (rev 5018) @@ -1159,7 +1159,7 @@ self.tex_font_map = None def finalize(self): - self.gc.finalize() + self.file.output(*self.gc.finalize()) def check_gc(self, gc, fillcolor=None): orig_fill = gc._fillcolor This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-03-27 14:26:22
|
Revision: 5025 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5025&view=rev Author: mdboom Date: 2008-03-27 07:26:19 -0700 (Thu, 27 Mar 2008) Log Message: ----------- Fix saving to Unicode filenames in Agg backend. Fix Qt and Qt4 GUI's to support saving to Unicode filenames in file save dialogs. Wx, Gtk and Tk GUIs already appear to work. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py branches/v0_91_maint/lib/matplotlib/backends/backend_qt.py branches/v0_91_maint/lib/matplotlib/backends/backend_qt4.py branches/v0_91_maint/src/_backend_agg.cpp Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-03-26 14:43:20 UTC (rev 5024) +++ branches/v0_91_maint/CHANGELOG 2008-03-27 14:26:19 UTC (rev 5025) @@ -1,3 +1,7 @@ +2008-03-27 Fix saving to Unicode filenames with Agg backend + (other backends appear to already work...) + (Thanks, Christopher Barker) - MGD + 2008-03-26 Fix SVG backend bug that prevents copying and pasting in Inkscape (thanks Kaushik Ghose) - MGD Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py 2008-03-26 14:43:20 UTC (rev 5024) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py 2008-03-27 14:26:19 UTC (rev 5025) @@ -387,13 +387,17 @@ def get_default_filetype(self): return 'png' - def print_raw(self, filename, *args, **kwargs): + def print_raw(self, filename_or_obj, *args, **kwargs): self.draw() - self.get_renderer()._renderer.write_rgba(str(filename)) + if type(filename_or_obj) in (str, unicode): + filename_or_obj = open(filename_or_obj, 'w') + self.get_renderer()._renderer.write_rgba(filename_or_obj) print_rgba = print_raw - def print_png(self, filename, *args, **kwargs): + def print_png(self, filename_or_obj, *args, **kwargs): self.draw() - filename = str(filename) # until we figure out unicode handling - self.get_renderer()._renderer.write_png(filename, self.figure.dpi.get()) + if type(filename_or_obj) in (str, unicode): + filename_or_obj = open(filename_or_obj, 'w') + self.get_renderer()._renderer.write_png(filename_or_obj, + self.figure.dpi.get()) Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_qt.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_qt.py 2008-03-26 14:43:20 UTC (rev 5024) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_qt.py 2008-03-27 14:26:19 UTC (rev 5025) @@ -425,7 +425,7 @@ selectedFilter) if fname: try: - self.canvas.print_figure( fname.latin1() ) + self.canvas.print_figure( unicode(fname) ) except Exception, e: qt.QMessageBox.critical( self, "Error saving file", str(e), Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_qt4.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_qt4.py 2008-03-26 14:43:20 UTC (rev 5024) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_qt4.py 2008-03-27 14:26:19 UTC (rev 5025) @@ -425,12 +425,12 @@ selectedFilter = filter filters.append(filter) filters = ';;'.join(filters) - + fname = QtGui.QFileDialog.getSaveFileName( self, "Choose a filename to save to", start, filters, selectedFilter) if fname: try: - self.canvas.print_figure( str(fname.toLatin1()) ) + self.canvas.print_figure( unicode(fname) ) except Exception, e: QtGui.QMessageBox.critical( self, "Error saving file", str(e), Modified: branches/v0_91_maint/src/_backend_agg.cpp =================================================================== --- branches/v0_91_maint/src/_backend_agg.cpp 2008-03-26 14:43:20 UTC (rev 5024) +++ branches/v0_91_maint/src/_backend_agg.cpp 2008-03-27 14:26:19 UTC (rev 5025) @@ -2247,14 +2247,34 @@ _VERBOSE("RendererAgg::write_rgba"); args.verify_length(1); - std::string fname = Py::String( args[0]); - std::ofstream of2( fname.c_str(), std::ios::binary|std::ios::out); - for (size_t i=0; i<NUMBYTES; i++) { - of2.write((char*)&(pixBuffer[i]), sizeof(char)); + FILE *fp = NULL; + bool close_file = false; + Py::Object py_fileobj = Py::Object(args[0]); + if (py_fileobj.isString()) { + std::string fileName = Py::String(py_fileobj); + const char *file_name = fileName.c_str(); + if ((fp = fopen(file_name, "wb")) == NULL) + throw Py::RuntimeError( Printf("Could not open file %s", file_name).str() ); + fwrite(pixBuffer, 1, NUMBYTES, fp); + close_file = true; + fclose(fp); + } else if (PyFile_CheckExact(py_fileobj.ptr())) { + fp = PyFile_AsFile(py_fileobj.ptr()); + fwrite(pixBuffer, 1, NUMBYTES, fp); + } else { + PyObject* write_method = PyObject_GetAttrString(py_fileobj.ptr(), "write"); + if (!(write_method && PyCallable_Check(write_method))) { + Py_XDECREF(write_method); + throw Py::TypeError("Object does not appear to be a 8-bit string path or a Python file-like object"); + } + + PyObject_CallFunction(write_method, "s#", pixBuffer, NUMBYTES); + + Py_XDECREF(write_method); } + return Py::Object(); - } static void write_png_data(png_structp png_ptr, png_bytep data, png_size_t length) { @@ -2288,18 +2308,22 @@ args.verify_length(1, 2); FILE *fp = NULL; + bool close_file = false; Py::Object py_fileobj = Py::Object(args[0]); if (py_fileobj.isString()) { std::string fileName = Py::String(py_fileobj); const char *file_name = fileName.c_str(); if ((fp = fopen(file_name, "wb")) == NULL) throw Py::RuntimeError( Printf("Could not open file %s", file_name).str() ); + close_file = true; + } else if (PyFile_CheckExact(py_fileobj.ptr())) { + fp = PyFile_AsFile(py_fileobj.ptr()); } else { PyObject* write_method = PyObject_GetAttrString(py_fileobj.ptr(), "write"); if (!(write_method && PyCallable_Check(write_method))) { Py_XDECREF(write_method); - throw Py::TypeError("Object does not appear to be a path or a Python file-like object"); + throw Py::TypeError("Object does not appear to be a 8-bit string path or a Python file-like object"); } Py_XDECREF(write_method); } @@ -2368,7 +2392,7 @@ */ } catch (...) { - if (fp) fclose(fp); + if (fp && close_file) fclose(fp); delete [] row_pointers; if (png_ptr && info_ptr) png_destroy_write_struct(&png_ptr, &info_ptr); throw; @@ -2376,7 +2400,7 @@ png_destroy_write_struct(&png_ptr, &info_ptr); delete [] row_pointers; - if (fp) fclose(fp); + if (fp && close_file) fclose(fp); return Py::Object(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2008-04-03 15:25:28
|
Revision: 5028 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5028&view=rev Author: jdh2358 Date: 2008-04-03 08:24:20 -0700 (Thu, 03 Apr 2008) Log Message: ----------- some small fixes to excel tools Modified Paths: -------------- branches/v0_91_maint/examples/rec_groupby_demo.py branches/v0_91_maint/lib/matplotlib/mlab.py branches/v0_91_maint/lib/matplotlib/toolkits/exceltools.py Modified: branches/v0_91_maint/examples/rec_groupby_demo.py =================================================================== --- branches/v0_91_maint/examples/rec_groupby_demo.py 2008-04-02 13:33:21 UTC (rev 5027) +++ branches/v0_91_maint/examples/rec_groupby_demo.py 2008-04-03 15:24:20 UTC (rev 5028) @@ -6,14 +6,20 @@ r.sort() def daily_return(prices): + 'an array of daily returns from price array' g = np.zeros_like(prices) g[1:] = (prices[1:]-prices[:-1])/prices[:-1] return g def volume_code(volume): + 'code the continuous volume data categorically' ind = np.searchsorted([1e5,1e6, 5e6,10e6, 1e7], volume) return ind +# a list of (dtype_name, summary_function, output_dtype_name). +# rec_summarize will call on each function on the indicated recarray +# attribute, and the result assigned to output name in the return +# record array. summaryfuncs = ( ('date', lambda x: [thisdate.year for thisdate in x], 'years'), ('date', lambda x: [thisdate.month for thisdate in x], 'months'), @@ -24,6 +30,10 @@ rsum = mlab.rec_summarize(r, summaryfuncs) +# stats is a list of (dtype_name, function, output_dtype_name). +# rec_groupby will summarize the attribute identified by the +# dtype_name over the groups in the groupby list, and assign the +# result to the output_dtype_name stats = ( ('dreturn', len, 'rcnt'), ('dreturn', np.mean, 'rmean'), @@ -31,6 +41,7 @@ ('dreturn', np.std, 'rsigma'), ) +# you can summarize over a single variable, like years or months print 'summary by years' ry = mlab.rec_groupby(rsum, ('years',), stats) print mlab. rec2txt(ry) @@ -39,6 +50,7 @@ rm = mlab.rec_groupby(rsum, ('months',), stats) print mlab.rec2txt(rm) +# or over multiple variables like years and months print 'summary by year and month' rym = mlab.rec_groupby(rsum, ('years','months'), stats) print mlab.rec2txt(rym) Modified: branches/v0_91_maint/lib/matplotlib/mlab.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/mlab.py 2008-04-02 13:33:21 UTC (rev 5027) +++ branches/v0_91_maint/lib/matplotlib/mlab.py 2008-04-03 15:24:20 UTC (rev 5028) @@ -1944,6 +1944,13 @@ else: return b +def safe_isinf(x): + 'isnan for arbitrary types' + try: b = npy.isinf(x) + except NotImplementedError: return False + else: return b + + def rec_append_field(rec, name, arr, dtype=None): 'return a new record array with field name populated with data from array arr' arr = npy.asarray(arr) Modified: branches/v0_91_maint/lib/matplotlib/toolkits/exceltools.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/toolkits/exceltools.py 2008-04-02 13:33:21 UTC (rev 5027) +++ branches/v0_91_maint/lib/matplotlib/toolkits/exceltools.py 2008-04-03 15:24:20 UTC (rev 5028) @@ -5,7 +5,7 @@ import matplotlib.mlab as mlab import matplotlib.toolkits.exceltools as exceltools - + r = mlab.csv2rec('somefile.csv', checkrows=0) formatd = dict( @@ -107,6 +107,10 @@ else: if mlab.safe_isnan(val): ws.write(rownum, colnum+i, 'NaN') + elif mlab.safe_isinf(val): + if val<0: sign='-' + else: sign='+' + ws.write(rownum, colnum+i, '%sInf'%sign) else: ws.write(rownum, colnum+i, val, format.xlstyle) rownum += 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-04-11 15:25:11
|
Revision: 5038 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5038&view=rev Author: mdboom Date: 2008-04-11 08:24:57 -0700 (Fri, 11 Apr 2008) Log Message: ----------- Fixing global font rcParam setting after initialization time (thanks to Lev Givon and Eric Firing for finding this) Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/font_manager.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-04-11 15:16:16 UTC (rev 5037) +++ branches/v0_91_maint/CHANGELOG 2008-04-11 15:24:57 UTC (rev 5038) @@ -1,3 +1,6 @@ +2008-04-11 Fix global font rcParam setting after initialization + time. - MGD + 2008-03-27 Fix saving to Unicode filenames with Agg backend (other backends appear to already work...) (Thanks, Christopher Barker) - MGD Modified: branches/v0_91_maint/lib/matplotlib/font_manager.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/font_manager.py 2008-04-11 15:16:16 UTC (rev 5037) +++ branches/v0_91_maint/lib/matplotlib/font_manager.py 2008-04-11 15:24:57 UTC (rev 5038) @@ -625,20 +625,6 @@ fontconfig. """ - class FontPropertiesSet(object): - """This class contains all of the default properties at the - class level, which are then overridden (only if provided) at - the instance level.""" - family = rcParams['font.' + rcParams['font.family']] - if is_string_like(family): - family = [family] - slant = [rcParams['font.style']] - variant = [rcParams['font.variant']] - weight = [rcParams['font.weight']] - stretch = [rcParams['font.stretch']] - size = [rcParams['font.size']] - file = None - def __init__(self, family = None, style = None, @@ -649,12 +635,17 @@ fname = None, # if this is set, it's a hardcoded filename to use _init = None # used only by copy() ): + self._family = None + self._slant = None + self._variant = None + self._weight = None + self._stretch = None + self._size = None + self._file = None - self.__props = self.FontPropertiesSet() - # This is used only by copy() if _init is not None: - self.__props.__dict__.update(_init) + self.__dict__.update(_init.__dict__) return if is_string_like(family): @@ -666,9 +657,8 @@ stretch is None and size is None and fname is None): - self.__props.__dict__ = self._parse_fontconfig_pattern(family) + self.set_fontconfig_pattern(family) return - family = [family] self.set_family(family) self.set_style(style) @@ -682,7 +672,7 @@ return parse_fontconfig_pattern(pattern) def __hash__(self): - return hash(repr(self.__props.__dict__)) + return hash(repr(self.__dict__)) def __str__(self): return self.get_fontconfig_pattern() @@ -690,7 +680,12 @@ def get_family(self): """Return a list of font names that comprise the font family. """ - return self.__props.family + if self._family is None: + family = rcParams['font.family'] + if is_string_like(family): + return [family] + return family + return self._family def get_name(self): """Return the name of the font that best matches the font properties.""" @@ -698,38 +693,45 @@ def get_style(self): """Return the font style. Values are: normal, italic or oblique.""" - return self.__props.slant[0] + if self._slant is None: + return rcParams['font.style'] + return self._slant def get_variant(self): """Return the font variant. Values are: normal or small-caps.""" - return self.__props.variant[0] + if self._variant is None: + return rcParams['font.variant'] + return self._variant def get_weight(self): """ Return the font weight. See the FontProperties class for a a list of possible values. """ - return self.__props.weight[0] + if self._weight is None: + return rcParams['font.weight'] + return self._weight def get_stretch(self): """ Return the font stretch or width. Options are: normal, narrow, condensed, or wide. """ - return self.__props.stretch[0] + if self._stretch is None: + return rcParams['font.stretch'] + return self._stretch def get_size(self): """Return the font size.""" - return float(self.__props.size[0]) + if self._size is None: + return rcParams['font.size'] + return float(self._size) def get_file(self): - if self.__props.file is not None: - return self.__props.file[0] - else: - return None + return self._file def get_fontconfig_pattern(self): - return generate_fontconfig_pattern(self.__props.__dict__) + return generate_fontconfig_pattern(self) def set_family(self, family): """ @@ -738,58 +740,49 @@ fantasy, or monospace, or a real font name. """ if family is None: - self.__props.__dict__.pop('family', None) + self._family = None else: if is_string_like(family): family = [family] - self.__props.family = family + self._family = family set_name = set_family def set_style(self, style): """Set the font style. Values are: normal, italic or oblique.""" - if style is None: - self.__props.__dict__.pop('style', None) - else: - if style not in ('normal', 'italic', 'oblique'): - raise ValueError("style must be normal, italic or oblique") - self.__props.slant = [style] + if style not in ('normal', 'italic', 'oblique', None): + raise ValueError("style must be normal, italic or oblique") + self._slant = style def set_variant(self, variant): """Set the font variant. Values are: normal or small-caps.""" - if variant is None: - self.__props.__dict__.pop('variant', None) - else: - if variant not in ('normal', 'small-caps'): - raise ValueError("variant must be normal or small-caps") - self.__props.variant = [variant] + if variant not in ('normal', 'small-caps', None): + raise ValueError("variant must be normal or small-caps") + self._variant = variant def set_weight(self, weight): """ Set the font weight. See the FontProperties class for a a list of possible values. """ - if weight is None: - self.__props.__dict__.pop('weight', None) - else: - if (weight not in weight_dict and - weight not in weight_dict.keys()): - raise ValueError("weight is invalid") - self.__props.weight = [weight] + if (weight is not None and + weight not in weight_dict and + weight not in weight_dict.keys()): + raise ValueError("weight is invalid") + self._weight = weight def set_stretch(self, stretch): """ Set the font stretch or width. Options are: normal, narrow, condensed, or wide. """ - if stretch is None: - self.__props.__dict__.pop('stretch', None) - else: - self.__props.stretch = [stretch] + if stretch not in ('normal', 'narrow', 'condensed', 'wide', None): + raise ValueError("stretch is invalid") + self._stretch = stretch def set_size(self, size): """Set the font size.""" if size is None: - self.__props.__dict__.pop('size', None) + self._size = None else: if is_string_like(size): parent_size = fontManager.get_default_size() @@ -797,28 +790,25 @@ if scaling is not None: size = parent_size * scaling else: - size = parent_size - if isinstance(size, (int, float)): - size = [size] - self.__props.size = size + try: + size = float(size) + except ValueError: + size = parent_size + assert(type(size) in (int, float)) + self._size = size def set_file(self, file): - if file is None: - self.__props.__dict__.pop('file', None) - else: - self.__props.file = [file] + self._file = file get_size_in_points = get_size def set_fontconfig_pattern(self, pattern): - self.__props.__dict__ = self._parse_fontconfig_pattern(pattern) + for key, val in self._parse_fontconfig_pattern(pattern).items(): + getattr(self, "set_" + key)(val) - def add_property_pair(self, key, val): - self.__props.setdefault(key, []).append(val) - def copy(self): """Return a deep copy of self""" - return FontProperties(_init = self.__props.__dict__) + return FontProperties(_init = self) def ttfdict_to_fnames(d): 'flatten a ttfdict to all the filenames it contains' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-04-22 15:02:15
|
Revision: 5058 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5058&view=rev Author: mdboom Date: 2008-04-22 08:01:00 -0700 (Tue, 22 Apr 2008) Log Message: ----------- Fix inconsistency between svg.embed_chars and svg.embed_char_paths Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/matplotlibrc.template Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-04-22 14:59:03 UTC (rev 5057) +++ branches/v0_91_maint/CHANGELOG 2008-04-22 15:01:00 UTC (rev 5058) @@ -1,3 +1,5 @@ +2008-04-22 Use "svg.embed_char_paths" consistently everywhere - MGD + 2008-04-11 Fix global font rcParam setting after initialization time. - MGD Modified: branches/v0_91_maint/matplotlibrc.template =================================================================== --- branches/v0_91_maint/matplotlibrc.template 2008-04-22 14:59:03 UTC (rev 5057) +++ branches/v0_91_maint/matplotlibrc.template 2008-04-22 15:01:00 UTC (rev 5058) @@ -156,7 +156,7 @@ # 'tex': As TeX-like text. Text between $'s will be # formatted as a TeX math expression. # This setting has no effect when text.usetex is True. - # In that case, all text will be sent to TeX for + # In that case, all text will be sent to TeX for # processing. # The following settings allow you to select the fonts in math mode. @@ -171,7 +171,7 @@ #mathtext.fontset : cm # Should be 'cm' (Computer Modern), 'stix', # 'stixsans' or 'custom' #mathtext.fallback_to_cm : True # When True, use symbols from the Computer Modern - # fonts when a symbol can not be found in one of + # fonts when a symbol can not be found in one of # the custom math fonts. ### AXES @@ -291,7 +291,7 @@ # svg backend params #svg.image_inline : True # write raster image data directly into the svg file #svg.image_noscale : False # suppress scaling of raster data embedded in SVG -#svg.embed_chars : True # embed character outlines in the SVG file +#svg.embed_char_paths : True # embed character outlines in the SVG file # Set the verbose flags. This controls how much information # matplotlib gives you at runtime and where it goes. The verbosity This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-04-24 12:31:58
|
Revision: 5068 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5068&view=rev Author: mdboom Date: 2008-04-24 05:31:53 -0700 (Thu, 24 Apr 2008) Log Message: ----------- Fix sub/superscript placement when the size of font has been changed. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/mathtext.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-04-24 12:20:23 UTC (rev 5067) +++ branches/v0_91_maint/CHANGELOG 2008-04-24 12:31:53 UTC (rev 5068) @@ -1,3 +1,6 @@ +2008-04-24 Fix sub/superscripts when the size of the font has been + changed - MGD + 2008-04-22 Use "svg.embed_char_paths" consistently everywhere - MGD 2008-04-11 Fix global font rcParam setting after initialization Modified: branches/v0_91_maint/lib/matplotlib/mathtext.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/mathtext.py 2008-04-24 12:20:23 UTC (rev 5067) +++ branches/v0_91_maint/lib/matplotlib/mathtext.py 2008-04-24 12:31:53 UTC (rev 5068) @@ -651,7 +651,7 @@ # Some fonts don't store the xHeight, so we do a poor man's xHeight metrics = self.get_metrics(font, 'it', 'x', fontsize, dpi) return metrics.iceberg - xHeight = pclt['xHeight'] / 64.0 + xHeight = (pclt['xHeight'] / 64.0) * (fontsize / 12.0) return xHeight def get_underline_thickness(self, font, fontsize, dpi): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-04-28 13:08:42
|
Revision: 5088 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5088&view=rev Author: mdboom Date: 2008-04-28 06:07:41 -0700 (Mon, 28 Apr 2008) Log Message: ----------- Fix SVG text rendering bug affecting Mozilla-based viewers. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-04-28 11:31:19 UTC (rev 5087) +++ branches/v0_91_maint/CHANGELOG 2008-04-28 13:07:41 UTC (rev 5088) @@ -1,3 +1,6 @@ +2008-04-28 Fix bug in SVG text with Mozilla-based viewers (the symbol + tag is not supported) - MGD + 2008-04-24 Fix sub/superscripts when the size of the font has been changed - MGD Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py 2008-04-28 11:31:19 UTC (rev 5087) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py 2008-04-28 13:07:41 UTC (rev 5088) @@ -390,7 +390,8 @@ currx, curry = step[-2], -step[-1] path_data = ''.join(path_data) char_num = 'c_%s' % md5.new(path_data).hexdigest() - path_element = '<symbol id="%s"><path d="%s"/></symbol>\n' % (char_num, ''.join(path_data)) + char_num = len(self._char_defs) + path_element = '<path id="%s" d="%s"/>\n' % (char_num, ''.join(path_data)) self._char_defs[char_id] = char_num return path_element This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mme...@us...> - 2008-04-29 13:22:29
|
Revision: 5095 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5095&view=rev Author: mmetz_bn Date: 2008-04-29 06:21:48 -0700 (Tue, 29 Apr 2008) Log Message: ----------- fixed bug in mlab.sqrtm; numpy.linalg.eig behaves different than Numeric did Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/mlab.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-04-28 19:17:31 UTC (rev 5094) +++ branches/v0_91_maint/CHANGELOG 2008-04-29 13:21:48 UTC (rev 5095) @@ -1,3 +1,5 @@ +2008-04-29 Fix bug in mlab.sqrtm - MM + 2008-04-28 Fix bug in SVG text with Mozilla-based viewers (the symbol tag is not supported) - MGD Modified: branches/v0_91_maint/lib/matplotlib/mlab.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/mlab.py 2008-04-28 19:17:31 UTC (rev 5094) +++ branches/v0_91_maint/lib/matplotlib/mlab.py 2008-04-29 13:21:48 UTC (rev 5095) @@ -1901,7 +1901,7 @@ def sqrtm(x): """ Returns the square root of a square matrix. - This means that s=sqrtm(x) implies s*s = x. + This means that s=sqrtm(x) implies dot(s,s) = x. Note that s and x are matrices. """ return mfuncC(npy.sqrt, x) @@ -1914,9 +1914,10 @@ """ x = npy.asarray(x) - (v, u) = npy.linalg.eig(x) - uT = u.transpose() + (v,uT) = npy.linalg.eig(x) V = npy.diag(f(v+0j)) + # todo: warning: this is not exactly what matlab does + # MATLAB "B/A is roughly the same as B*inv(A)" y = npy.dot(uT, npy.dot(V, npy.linalg.inv(uT))) return approx_real(y) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-02 16:56:11
|
Revision: 5104 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5104&view=rev Author: mdboom Date: 2008-05-02 09:55:59 -0700 (Fri, 02 May 2008) Log Message: ----------- Update _subprocess.c from upstream Python 2.5.2 to get a few memory and reference-counting-related bugfixes. See bug 1949978. - MGD Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/src/_subprocess.c Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-05-01 18:38:28 UTC (rev 5103) +++ branches/v0_91_maint/CHANGELOG 2008-05-02 16:55:59 UTC (rev 5104) @@ -1,3 +1,7 @@ +2008-05-02 Update _subprocess.c from upstream Python 2.5.2 to get a + few memory and reference-counting-related bugfixes. See + bug 1949978. - MGD + 2008-04-29 Fix bug in mlab.sqrtm - MM 2008-04-28 Fix bug in SVG text with Mozilla-based viewers (the symbol Modified: branches/v0_91_maint/src/_subprocess.c =================================================================== --- branches/v0_91_maint/src/_subprocess.c 2008-05-01 18:38:28 UTC (rev 5103) +++ branches/v0_91_maint/src/_subprocess.c 2008-05-02 16:55:59 UTC (rev 5104) @@ -104,12 +104,12 @@ { if (self->handle != INVALID_HANDLE_VALUE) CloseHandle(self->handle); - PyMem_DEL(self); + PyObject_FREE(self); } static PyMethodDef sp_handle_methods[] = { - {"Detach", (PyCFunction) sp_handle_detach, 1}, - {"Close", (PyCFunction) sp_handle_close, 1}, + {"Detach", (PyCFunction) sp_handle_detach, METH_VARARGS}, + {"Close", (PyCFunction) sp_handle_close, METH_VARARGS}, {NULL, NULL} }; @@ -250,19 +250,23 @@ getint(PyObject* obj, char* name) { PyObject* value; + int ret; value = PyObject_GetAttrString(obj, name); if (! value) { PyErr_Clear(); /* FIXME: propagate error? */ return 0; } - return (int) PyInt_AsLong(value); + ret = (int) PyInt_AsLong(value); + Py_DECREF(value); + return ret; } static HANDLE gethandle(PyObject* obj, char* name) { sp_handle_object* value; + HANDLE ret; value = (sp_handle_object*) PyObject_GetAttrString(obj, name); if (! value) { @@ -270,8 +274,11 @@ return NULL; } if (value->ob_type != &sp_handle_type) - return NULL; - return value->handle; + ret = NULL; + else + ret = value->handle; + Py_DECREF(value); + return ret; } static PyObject* This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-02 17:05:24
|
Revision: 5107 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5107&view=rev Author: mdboom Date: 2008-05-02 10:05:19 -0700 (Fri, 02 May 2008) Log Message: ----------- Don't call sys.exit() when pyemf is not found. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_emf.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-05-02 17:00:01 UTC (rev 5106) +++ branches/v0_91_maint/CHANGELOG 2008-05-02 17:05:19 UTC (rev 5107) @@ -1,3 +1,6 @@ +2008-05-02 Don't call sys.exit() when pyemf is not found [1924199] - + MGD + 2008-05-02 Update _subprocess.c from upstream Python 2.5.2 to get a few memory and reference-counting-related bugfixes. See bug 1949978. - MGD Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_emf.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_emf.py 2008-05-02 17:00:01 UTC (rev 5106) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_emf.py 2008-05-02 17:05:19 UTC (rev 5107) @@ -8,9 +8,7 @@ try: import pyemf except ImportError: - import sys - print >>sys.stderr, 'You must first install pyemf from http://pyemf.sf.net' - sys.exit() + raise ImportError('You must first install pyemf from http://pyemf.sf.net') import os,sys,math,re @@ -600,7 +598,7 @@ pass filetypes = {'emf': 'Enhanced Metafile'} - + def print_emf(self, filename, dpi=300, **kwargs): width, height = self.figure.get_size_inches() renderer = RendererEMF(filename,width,height,dpi) @@ -609,7 +607,7 @@ def get_default_filetype(self): return 'emf' - + class FigureManagerEMF(FigureManagerBase): """ Wrap everything up into a window for the pylab interface This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-02 17:20:40
|
Revision: 5108 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5108&view=rev Author: mdboom Date: 2008-05-02 10:20:38 -0700 (Fri, 02 May 2008) Log Message: ----------- Fix build error with PyQt <= 3.14 [1851364] - MGD Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/setupext.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-05-02 17:05:19 UTC (rev 5107) +++ branches/v0_91_maint/CHANGELOG 2008-05-02 17:20:38 UTC (rev 5108) @@ -1,3 +1,6 @@ +2008-05-02 On PyQt <= 3.14 there is no way to determine the underlying + Qt version. [1851364] - MGD + 2008-05-02 Don't call sys.exit() when pyemf is not found [1924199] - MGD Modified: branches/v0_91_maint/setupext.py =================================================================== --- branches/v0_91_maint/setupext.py 2008-05-02 17:05:19 UTC (rev 5107) +++ branches/v0_91_maint/setupext.py 2008-05-02 17:20:38 UTC (rev 5108) @@ -100,20 +100,20 @@ numpy_inc_dirs = [] # matplotlib build options, which can be altered using setup.cfg -options = {'display_status': True, - 'verbose': False, - 'provide_pytz': 'auto', - 'provide_dateutil': 'auto', - 'provide_configobj': 'auto', - 'provide_traits': 'auto', - 'build_agg': True, - 'build_gtk': 'auto', - 'build_gtkagg': 'auto', - 'build_tkagg': 'auto', - 'build_wxagg': 'auto', - 'build_image': True, - 'build_windowing': True, - 'backend': None, +options = {'display_status': True, + 'verbose': False, + 'provide_pytz': 'auto', + 'provide_dateutil': 'auto', + 'provide_configobj': 'auto', + 'provide_traits': 'auto', + 'build_agg': True, + 'build_gtk': 'auto', + 'build_gtkagg': 'auto', + 'build_tkagg': 'auto', + 'build_wxagg': 'auto', + 'build_image': True, + 'build_windowing': True, + 'backend': None, 'numerix': None} # Based on the contents of setup.cfg, determine the build options @@ -351,8 +351,13 @@ print_status("Qt", "no") return False else: + try: + qt_version = pyqtconfig.Configuration().qt_version + qt_version = convert_qt_version(qt_version) + except AttributeError: + qt_version = "<unknown>" print_status("Qt", "Qt: %s, PyQt: %s" % - (convert_qt_version(pyqtconfig.Configuration().qt_version), + (qt_version, pyqtconfig.Configuration().pyqt_version_str)) return True @@ -813,7 +818,7 @@ explanation = "Tcl/Tk v8.3 or later required" else: gotit = True - + if gotit: module = Extension('test', []) try: @@ -830,7 +835,7 @@ else: explanation = message gotit = False - + if gotit: print_status("Tkinter", "Tkinter: %s, Tk: %s, Tcl: %s" % (Tkinter.__version__.split()[-2], Tkinter.TkVersion, Tkinter.TclVersion)) @@ -849,7 +854,7 @@ # Use cached values if they exist, which ensures this function only executes once if TCL_TK_CACHE is not None: return TCL_TK_CACHE - + # By this point, we already know that Tkinter imports correctly import Tkinter tcl_lib_dir = '' @@ -875,14 +880,14 @@ tk.withdraw() tcl_lib_dir = str(tk.getvar('tcl_library')) tk_lib_dir = str(tk.getvar('tk_library')) - + # Save directories and version string to cache TCL_TK_CACHE = tcl_lib_dir, tk_lib_dir, str(Tkinter.TkVersion)[:3] return TCL_TK_CACHE def add_tk_flags(module): 'Add the module flags to build extensions which use tk' - message = None + message = None if sys.platform == 'win32': major, minor1, minor2, s, tmp = sys.version_info if major == 2 and minor1 in [3, 4, 5]: @@ -894,11 +899,11 @@ else: raise RuntimeError('No tk/win32 support for this python version yet') module.library_dirs.extend([os.path.join(sys.prefix, 'dlls')]) - + elif sys.platform == 'darwin': # this config section lifted directly from Imaging - thanks to # the effbot! - + # First test for a MacOSX/darwin framework install from os.path import join, exists framework_dirs = [ @@ -906,7 +911,7 @@ '/Library/Frameworks', '/System/Library/Frameworks/', ] - + # Find the directory that contains the Tcl.framework and Tk.framework # bundles. # XXX distutils should support -F! @@ -931,7 +936,7 @@ for fw in 'Tcl', 'Tk' for H in 'Headers', 'Versions/Current/PrivateHeaders' ] - + # For 8.4a2, the X11 headers are not included. Rather than include a # complicated search, this is a hard-coded path. It could bail out # if X11 libs are not found... @@ -940,31 +945,31 @@ module.include_dirs.extend(tk_include_dirs) module.extra_link_args.extend(frameworks) module.extra_compile_args.extend(frameworks) - + # you're still here? ok we'll try it this way... else: # Query Tcl/Tk system for library paths and version string tcl_lib_dir, tk_lib_dir, tk_ver = query_tcltk() # todo: try/except - + # Process base directories to obtain include + lib dirs - if tcl_lib_dir != '' and tk_lib_dir != '': + if tcl_lib_dir != '' and tk_lib_dir != '': tcl_lib = os.path.normpath(os.path.join(tcl_lib_dir, '../')) tk_lib = os.path.normpath(os.path.join(tk_lib_dir, '../')) - tcl_inc = os.path.normpath(os.path.join(tcl_lib_dir, + tcl_inc = os.path.normpath(os.path.join(tcl_lib_dir, '../../include/tcl' + tk_ver)) if not os.path.exists(tcl_inc): - tcl_inc = os.path.normpath(os.path.join(tcl_lib_dir, + tcl_inc = os.path.normpath(os.path.join(tcl_lib_dir, '../../include')) - tk_inc = os.path.normpath(os.path.join(tk_lib_dir, + tk_inc = os.path.normpath(os.path.join(tk_lib_dir, '../../include/tk' + tk_ver)) if not os.path.exists(tk_inc): - tk_inc = os.path.normpath(os.path.join(tk_lib_dir, + tk_inc = os.path.normpath(os.path.join(tk_lib_dir, '../../include')) - + if ((not os.path.exists(os.path.join(tk_inc,'tk.h'))) and os.path.exists(os.path.join(tcl_inc,'tk.h'))): tk_inc = tcl_inc - + if not os.path.exists(tcl_inc): # this is a hack for suse linux, which is broken if (sys.platform.startswith('linux') and @@ -986,7 +991,7 @@ module.include_dirs.extend([tcl_inc, tk_inc]) module.library_dirs.extend([tcl_lib, tk_lib]) module.libraries.extend(['tk' + tk_ver, 'tcl' + tk_ver]) - + return message def add_windowing_flags(module): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-06 15:25:18
|
Revision: 5120 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5120&view=rev Author: mdboom Date: 2008-05-06 08:25:04 -0700 (Tue, 06 May 2008) Log Message: ----------- Fix blitting in Qt backends (which need ARGB, not RGBA) Modified Paths: -------------- branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py branches/v0_91_maint/src/_backend_agg.cpp branches/v0_91_maint/src/_backend_agg.h Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py 2008-05-06 14:34:32 UTC (rev 5119) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py 2008-05-06 15:25:04 UTC (rev 5120) @@ -112,7 +112,7 @@ w, h = int(bbox.width()), int(bbox.height()) l, t = bbox.ll().x().get(), bbox.ur().y().get() reg = self.copy_from_bbox(bbox) - stringBuffer = reg.to_string() + stringBuffer = reg.to_string_argb() qImage = QtGui.QImage(stringBuffer, w, h, QtGui.QImage.Format_ARGB32) pixmap = QtGui.QPixmap.fromImage(qImage) p = QtGui.QPainter( self ) Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py 2008-05-06 14:34:32 UTC (rev 5119) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py 2008-05-06 15:25:04 UTC (rev 5120) @@ -118,7 +118,7 @@ w, h = int(bbox.width()), int(bbox.height()) l, t = bbox.ll().x().get(), bbox.ur().y().get() reg = self.copy_from_bbox(bbox) - stringBuffer = reg.to_string() + stringBuffer = reg.to_string_argb() qImage = qt.QImage(stringBuffer, w, h, 32, None, 0, qt.QImage.IgnoreEndian) self.pixmap.convertFromImage(qImage, qt.QPixmap.Color) p.drawPixmap(qt.QPoint(l, self.renderer.height-t), self.pixmap) Modified: branches/v0_91_maint/src/_backend_agg.cpp =================================================================== --- branches/v0_91_maint/src/_backend_agg.cpp 2008-05-06 14:34:32 UTC (rev 5119) +++ branches/v0_91_maint/src/_backend_agg.cpp 2008-05-06 15:25:04 UTC (rev 5120) @@ -224,9 +224,35 @@ return Py::String(PyString_FromStringAndSize((const char*)aggbuf.data,aggbuf.height*aggbuf.stride), true); } +Py::Object BufferRegion::to_string_argb(const Py::Tuple &args) { + // owned=true to prevent memory leak + Py_ssize_t length; + char* pix; + char* begin; + char* end; + char tmp; + PyObject* str = PyString_FromStringAndSize((const char*)aggbuf.data, aggbuf.height*aggbuf.stride); + if (PyString_AsStringAndSize(str, &begin, &length)) { + throw Py::TypeError("Could not create memory for blit"); + } + pix = begin; + end = begin + (aggbuf.height * aggbuf.stride); + while (pix != end) { + // Convert rgba to argb + tmp = pix[3]; + pix[3] = pix[2]; + pix[2] = pix[1]; + pix[1] = pix[0]; + pix[0] = pix[3]; + pix += 4; + } + return Py::String(str, true); +} + + const size_t RendererAgg::PIXELS_PER_INCH(96); @@ -2612,7 +2638,8 @@ add_varargs_method("to_string", &BufferRegion::to_string, "to_string()"); - + add_varargs_method("to_string_argb", &BufferRegion::to_string_argb, + "to_string_argb()"); } Modified: branches/v0_91_maint/src/_backend_agg.h =================================================================== --- branches/v0_91_maint/src/_backend_agg.h 2008-05-06 14:34:32 UTC (rev 5119) +++ branches/v0_91_maint/src/_backend_agg.h 2008-05-06 15:25:04 UTC (rev 5120) @@ -67,7 +67,7 @@ SafeSnap() : first(true), xsnap(0.0), lastx(0.0), lastxsnap(0.0), ysnap(0.0), lasty(0.0), lastysnap(0.0) {} SnapData snap (const float& x, const float& y); - + private: bool first; float xsnap, lastx, lastxsnap, ysnap, lasty, lastysnap; @@ -85,6 +85,7 @@ agg::rect rect; bool freemem; Py::Object to_string(const Py::Tuple &args); + Py::Object to_string_argb(const Py::Tuple &args); static void init_type(void); virtual ~BufferRegion() { @@ -125,7 +126,7 @@ double dashOffset; double *dasha; - + protected: agg::rgba get_color(const Py::Object& gc); double points_to_pixels( const Py::Object& points); @@ -141,7 +142,7 @@ //struct AMRenderer { -// +// //} // the renderer This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-06 18:56:59
|
Revision: 5123 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5123&view=rev Author: mdboom Date: 2008-05-06 11:56:47 -0700 (Tue, 06 May 2008) Log Message: ----------- Fixing bugs in recent changes to Qt blitting. Modified Paths: -------------- branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py branches/v0_91_maint/src/_backend_agg.cpp Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py 2008-05-06 15:42:16 UTC (rev 5122) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_qt4agg.py 2008-05-06 18:56:47 UTC (rev 5123) @@ -109,8 +109,10 @@ # we are blitting here else: bbox = self.replot - w, h = int(bbox.width()), int(bbox.height()) - l, t = bbox.ll().x().get(), bbox.ur().y().get() + l, t = int(bbox.ll().x().get()), int(bbox.ur().y().get()) + r, b = int(bbox.ur().x().get()), int(bbox.ll().y().get()) + w = r - l + h = t - b reg = self.copy_from_bbox(bbox) stringBuffer = reg.to_string_argb() qImage = QtGui.QImage(stringBuffer, w, h, QtGui.QImage.Format_ARGB32) Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py 2008-05-06 15:42:16 UTC (rev 5122) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_qtagg.py 2008-05-06 18:56:47 UTC (rev 5123) @@ -115,8 +115,10 @@ # we are blitting here else: bbox = self.replot - w, h = int(bbox.width()), int(bbox.height()) - l, t = bbox.ll().x().get(), bbox.ur().y().get() + l, t = int(bbox.ll().x().get()), int(bbox.ur().y().get()) + r, b = int(bbox.ur().x().get()), int(bbox.ll().y().get()) + w = r - l + h = t - b reg = self.copy_from_bbox(bbox) stringBuffer = reg.to_string_argb() qImage = qt.QImage(stringBuffer, w, h, 32, None, 0, qt.QImage.IgnoreEndian) Modified: branches/v0_91_maint/src/_backend_agg.cpp =================================================================== --- branches/v0_91_maint/src/_backend_agg.cpp 2008-05-06 15:42:16 UTC (rev 5122) +++ branches/v0_91_maint/src/_backend_agg.cpp 2008-05-06 18:56:47 UTC (rev 5123) @@ -227,26 +227,28 @@ Py::Object BufferRegion::to_string_argb(const Py::Tuple &args) { // owned=true to prevent memory leak Py_ssize_t length; - char* pix; - char* begin; - char* end; - char tmp; + unsigned char* pix; + unsigned char* begin; + unsigned char* end; + unsigned char tmp; + size_t i, j; PyObject* str = PyString_FromStringAndSize((const char*)aggbuf.data, aggbuf.height*aggbuf.stride); - if (PyString_AsStringAndSize(str, &begin, &length)) { + if (PyString_AsStringAndSize(str, (char**)&begin, &length)) { throw Py::TypeError("Could not create memory for blit"); } pix = begin; end = begin + (aggbuf.height * aggbuf.stride); - while (pix != end) { - // Convert rgba to argb - tmp = pix[3]; - pix[3] = pix[2]; - pix[2] = pix[1]; - pix[1] = pix[0]; - pix[0] = pix[3]; - pix += 4; + for (i = 0; i < aggbuf.height; ++i) { + pix = begin + i * aggbuf.stride; + for (j = 0; j < aggbuf.width; ++j) { + // Convert rgba to argb + tmp = pix[2]; + pix[2] = pix[0]; + pix[0] = tmp; + pix += 4; + } } return Py::String(str, true); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-08 16:46:10
|
Revision: 5130 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5130&view=rev Author: mdboom Date: 2008-05-08 09:45:55 -0700 (Thu, 08 May 2008) Log Message: ----------- Fix kerning in SVG. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-05-07 19:41:26 UTC (rev 5129) +++ branches/v0_91_maint/CHANGELOG 2008-05-08 16:45:55 UTC (rev 5130) @@ -1,3 +1,5 @@ +2008-05-08 Fix kerning in SVG when embedding character outlines - MGD + 2008-05-06 Fix strange colors when blitting in QtAgg and Qt4Agg - MGD 2008-05-02 On PyQt <= 3.14 there is no way to determine the underlying Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py 2008-05-07 19:41:26 UTC (rev 5129) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_svg.py 2008-05-08 16:45:55 UTC (rev 5130) @@ -322,7 +322,7 @@ else: kern = 0 lastgind = gind - currx += kern/64.0 + currx += kern/64.0 / (self.FONT_SCALE / fontsize) svg.append('<use xlink:href="#%s"' % charnum) if currx != 0: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-09 12:39:41
|
Revision: 5134 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5134&view=rev Author: mdboom Date: 2008-05-09 05:39:25 -0700 (Fri, 09 May 2008) Log Message: ----------- Fix /singlequote (') in Ps backend. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/backends/backend_ps.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-05-09 07:45:29 UTC (rev 5133) +++ branches/v0_91_maint/CHANGELOG 2008-05-09 12:39:25 UTC (rev 5134) @@ -1,3 +1,5 @@ +2008-05-09 Fix /singlequote (') in Postscript backend - MGD + 2008-05-08 Fix kerning in SVG when embedding character outlines - MGD 2008-05-06 Fix strange colors when blitting in QtAgg and Qt4Agg - MGD Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_ps.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_ps.py 2008-05-09 07:45:29 UTC (rev 5133) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_ps.py 2008-05-09 12:39:25 UTC (rev 5134) @@ -96,6 +96,7 @@ s=s.replace("\\", "\\\\") s=s.replace("(", "\\(") s=s.replace(")", "\\)") + s=s.replace("'", "\\251") s=re.sub(r"[^ -~\n]", lambda x: r"\%03o"%ord(x.group()), s) return s This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <md...@us...> - 2008-05-14 13:02:39
|
Revision: 5136 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5136&view=rev Author: mdboom Date: 2008-05-14 05:59:46 -0700 (Wed, 14 May 2008) Log Message: ----------- Fix font embedding on Windows. Modified Paths: -------------- branches/v0_91_maint/CHANGELOG branches/v0_91_maint/lib/matplotlib/cbook.py Modified: branches/v0_91_maint/CHANGELOG =================================================================== --- branches/v0_91_maint/CHANGELOG 2008-05-09 12:46:00 UTC (rev 5135) +++ branches/v0_91_maint/CHANGELOG 2008-05-14 12:59:46 UTC (rev 5136) @@ -1,3 +1,5 @@ +2008-05-14 Don't use stat on Windows (fixes font embedding problem) - MGD + 2008-05-09 Fix /singlequote (') in Postscript backend - MGD 2008-05-08 Fix kerning in SVG when embedding character outlines - MGD Modified: branches/v0_91_maint/lib/matplotlib/cbook.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/cbook.py 2008-05-09 12:46:00 UTC (rev 5135) +++ branches/v0_91_maint/lib/matplotlib/cbook.py 2008-05-14 12:59:46 UTC (rev 5136) @@ -412,8 +412,11 @@ result = self._cache.get(path) if result is None: realpath = os.path.realpath(path) - stat = os.stat(realpath) - stat_key = (stat.st_ino, stat.st_dev) + if sys.platform == 'win32': + stat_key = realpath + else: + stat = os.stat(realpath) + stat_key = (stat.st_ino, stat.st_dev) result = realpath, stat_key self._cache[path] = result return result This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jd...@us...> - 2008-05-17 20:57:15
|
Revision: 5171 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5171&view=rev Author: jdh2358 Date: 2008-05-17 13:57:13 -0700 (Sat, 17 May 2008) Log Message: ----------- made backend agg open png in binary mode Modified Paths: -------------- branches/v0_91_maint/examples/embedding_in_gtk2.py branches/v0_91_maint/examples/embedding_in_tk.py branches/v0_91_maint/examples/embedding_in_tk2.py branches/v0_91_maint/examples/mathtext_demo.py branches/v0_91_maint/examples/mathtext_examples.py branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py Modified: branches/v0_91_maint/examples/embedding_in_gtk2.py =================================================================== --- branches/v0_91_maint/examples/embedding_in_gtk2.py 2008-05-17 17:05:36 UTC (rev 5170) +++ branches/v0_91_maint/examples/embedding_in_gtk2.py 2008-05-17 20:57:13 UTC (rev 5171) @@ -5,7 +5,6 @@ """ import gtk -from matplotlib.axes import Subplot from matplotlib.figure import Figure from numpy import arange, sin, pi Modified: branches/v0_91_maint/examples/embedding_in_tk.py =================================================================== --- branches/v0_91_maint/examples/embedding_in_tk.py 2008-05-17 17:05:36 UTC (rev 5170) +++ branches/v0_91_maint/examples/embedding_in_tk.py 2008-05-17 20:57:13 UTC (rev 5171) @@ -1,7 +1,4 @@ #!/usr/bin/env python -import matplotlib -matplotlib.use('TkAgg') - from numpy import arange, sin, pi from matplotlib.axes import Subplot from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg Modified: branches/v0_91_maint/examples/embedding_in_tk2.py =================================================================== --- branches/v0_91_maint/examples/embedding_in_tk2.py 2008-05-17 17:05:36 UTC (rev 5170) +++ branches/v0_91_maint/examples/embedding_in_tk2.py 2008-05-17 20:57:13 UTC (rev 5171) @@ -1,43 +1,38 @@ #!/usr/bin/env python -import matplotlib -matplotlib.use('TkAgg') - -from numpy import arange, sin, pi -from matplotlib.axes import Subplot -from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg -from matplotlib.figure import Figure - import Tkinter as Tk -import sys +import numpy as np +import matplotlib.backends.backend_tkagg as backend +import matplotlib.figure as mfigure -def destroy(e): sys.exit() root = Tk.Tk() root.wm_title("Embedding in TK") -#root.bind("<Destroy>", destroy) +fig = mfigure.Figure(figsize=(5,4), dpi=100) +ax = fig.add_subplot(111) +t = np.arange(0.0,3.0,0.01) +s = np.sin(2*np.pi*t) -f = Figure(figsize=(5,4), dpi=100) -a = f.add_subplot(111) -t = arange(0.0,3.0,0.01) -s = sin(2*pi*t) +ax.plot(t,s) +ax.grid(True) +ax.set_title('Tk embedding') +ax.set_xlabel('time (s)') +ax.set_ylabel('volts (V)') -a.plot(t,s) -a.set_title('Tk embedding') -a.set_xlabel('X axis label') -a.set_ylabel('Y label') - # a tk.DrawingArea -canvas = FigureCanvasTkAgg(f, master=root) +canvas = backend.FigureCanvasTkAgg(fig, master=root) canvas.show() canvas.get_tk_widget().pack(side=Tk.TOP, fill=Tk.BOTH, expand=1) -#toolbar = NavigationToolbar2TkAgg( canvas, root ) +#toolbar = backend.NavigationToolbar2TkAgg( canvas, root ) #toolbar.update() -canvas._tkcanvas.pack(side=Tk.TOP, fill=Tk.BOTH, expand=1) +#toolbar.pack(side=Tk.LEFT) -button = Tk.Button(master=root, text='Quit', command=sys.exit) +def destroy(): + raise SystemExit + +button = Tk.Button(master=root, text='Quit', command=destroy) button.pack(side=Tk.BOTTOM) Tk.mainloop() Modified: branches/v0_91_maint/examples/mathtext_demo.py =================================================================== --- branches/v0_91_maint/examples/mathtext_demo.py 2008-05-17 17:05:36 UTC (rev 5170) +++ branches/v0_91_maint/examples/mathtext_demo.py 2008-05-17 20:57:13 UTC (rev 5171) @@ -18,7 +18,7 @@ ax.set_ylabel(r'$\Delta_{i+1}^j$', fontsize=20) tex = r'$\mathcal{R}\prod_{i=\alpha_{i+1}}^\infty a_i\sin(2 \pi f x_i)$' -ax.text(1, 1.6, tex, fontsize=20, va='bottom') +mymath = ax.text(1, 1.6, tex, fontsize=20, va='bottom') ax.legend(("Foo", "Testing $x^2$")) Modified: branches/v0_91_maint/examples/mathtext_examples.py =================================================================== --- branches/v0_91_maint/examples/mathtext_examples.py 2008-05-17 17:05:36 UTC (rev 5170) +++ branches/v0_91_maint/examples/mathtext_examples.py 2008-05-17 20:57:13 UTC (rev 5171) @@ -49,7 +49,7 @@ r'$\widehat{abc}\widetilde{def}$', r'$\Gamma \Delta \Theta \Lambda \Xi \Pi \Sigma \Upsilon \Phi \Psi \Omega$', r'$\alpha \beta \gamma \delta \epsilon \zeta \eta \theta \iota \lambda \mu \nu \xi \pi \kappa \rho \sigma \tau \upsilon \phi \chi \psi$', - ur'Generic symbol: $\u23ce \mathrm{\ue0f2 \U0001D538}$' + #ur'Generic symbol: $\u23ce \mathrm{\ue0f2 \U0001D538}$' ] from pylab import * Modified: branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py =================================================================== --- branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py 2008-05-17 17:05:36 UTC (rev 5170) +++ branches/v0_91_maint/lib/matplotlib/backends/backend_agg.py 2008-05-17 20:57:13 UTC (rev 5171) @@ -390,14 +390,14 @@ def print_raw(self, filename_or_obj, *args, **kwargs): self.draw() if type(filename_or_obj) in (str, unicode): - filename_or_obj = open(filename_or_obj, 'w') + filename_or_obj = file(filename_or_obj, 'wb') self.get_renderer()._renderer.write_rgba(filename_or_obj) print_rgba = print_raw def print_png(self, filename_or_obj, *args, **kwargs): self.draw() if type(filename_or_obj) in (str, unicode): - filename_or_obj = open(filename_or_obj, 'w') + filename_or_obj = file(filename_or_obj, 'wb') self.get_renderer()._renderer.write_png(filename_or_obj, self.figure.dpi.get()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |