You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
(12) |
Sep
(12) |
Oct
(56) |
Nov
(65) |
Dec
(37) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(59) |
Feb
(78) |
Mar
(153) |
Apr
(205) |
May
(184) |
Jun
(123) |
Jul
(171) |
Aug
(156) |
Sep
(190) |
Oct
(120) |
Nov
(154) |
Dec
(223) |
2005 |
Jan
(184) |
Feb
(267) |
Mar
(214) |
Apr
(286) |
May
(320) |
Jun
(299) |
Jul
(348) |
Aug
(283) |
Sep
(355) |
Oct
(293) |
Nov
(232) |
Dec
(203) |
2006 |
Jan
(352) |
Feb
(358) |
Mar
(403) |
Apr
(313) |
May
(165) |
Jun
(281) |
Jul
(316) |
Aug
(228) |
Sep
(279) |
Oct
(243) |
Nov
(315) |
Dec
(345) |
2007 |
Jan
(260) |
Feb
(323) |
Mar
(340) |
Apr
(319) |
May
(290) |
Jun
(296) |
Jul
(221) |
Aug
(292) |
Sep
(242) |
Oct
(248) |
Nov
(242) |
Dec
(332) |
2008 |
Jan
(312) |
Feb
(359) |
Mar
(454) |
Apr
(287) |
May
(340) |
Jun
(450) |
Jul
(403) |
Aug
(324) |
Sep
(349) |
Oct
(385) |
Nov
(363) |
Dec
(437) |
2009 |
Jan
(500) |
Feb
(301) |
Mar
(409) |
Apr
(486) |
May
(545) |
Jun
(391) |
Jul
(518) |
Aug
(497) |
Sep
(492) |
Oct
(429) |
Nov
(357) |
Dec
(310) |
2010 |
Jan
(371) |
Feb
(657) |
Mar
(519) |
Apr
(432) |
May
(312) |
Jun
(416) |
Jul
(477) |
Aug
(386) |
Sep
(419) |
Oct
(435) |
Nov
(320) |
Dec
(202) |
2011 |
Jan
(321) |
Feb
(413) |
Mar
(299) |
Apr
(215) |
May
(284) |
Jun
(203) |
Jul
(207) |
Aug
(314) |
Sep
(321) |
Oct
(259) |
Nov
(347) |
Dec
(209) |
2012 |
Jan
(322) |
Feb
(414) |
Mar
(377) |
Apr
(179) |
May
(173) |
Jun
(234) |
Jul
(295) |
Aug
(239) |
Sep
(276) |
Oct
(355) |
Nov
(144) |
Dec
(108) |
2013 |
Jan
(170) |
Feb
(89) |
Mar
(204) |
Apr
(133) |
May
(142) |
Jun
(89) |
Jul
(160) |
Aug
(180) |
Sep
(69) |
Oct
(136) |
Nov
(83) |
Dec
(32) |
2014 |
Jan
(71) |
Feb
(90) |
Mar
(161) |
Apr
(117) |
May
(78) |
Jun
(94) |
Jul
(60) |
Aug
(83) |
Sep
(102) |
Oct
(132) |
Nov
(154) |
Dec
(96) |
2015 |
Jan
(45) |
Feb
(138) |
Mar
(176) |
Apr
(132) |
May
(119) |
Jun
(124) |
Jul
(77) |
Aug
(31) |
Sep
(34) |
Oct
(22) |
Nov
(23) |
Dec
(9) |
2016 |
Jan
(26) |
Feb
(17) |
Mar
(10) |
Apr
(8) |
May
(4) |
Jun
(8) |
Jul
(6) |
Aug
(5) |
Sep
(9) |
Oct
(4) |
Nov
|
Dec
|
2017 |
Jan
(5) |
Feb
(7) |
Mar
(1) |
Apr
(5) |
May
|
Jun
(3) |
Jul
(6) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
1
(8) |
2
(7) |
3
(8) |
4
(12) |
5
(1) |
6
(1) |
7
(9) |
8
(2) |
9
|
10
(1) |
11
|
12
(6) |
13
(6) |
14
(2) |
15
(7) |
16
(10) |
17
|
18
(3) |
19
(4) |
20
(4) |
21
(10) |
22
(8) |
23
(17) |
24
(13) |
25
(9) |
26
(1) |
27
(1) |
28
(4) |
29
(7) |
30
(2) |
31
(10) |
|
|
From: Stan W. <sta...@nr...> - 2012-05-31 18:26:11
|
> From: Jerzy Karczmarczuk [mailto:jer...@un...] > Sent: Sunday, May 27, 2012 12:56 > > Gordon Hardmant : > > I ...cannot find a simple way to stop a curve being drawn once it crosses > > another curve. In the attached example, I am trying to draw the solid > > curve only until it intersects the dashed one. I have tried using the > > numpy.where() method, but it does not seem to be the right way to go > > about it- I end up having to write FOR loops and so on, and that does > > not make use of the vectorization advantages of numpy. > Try to insert just before plot(...) the following two lines: > > igc=np.sign(ig_bdry-ig_d2) > ig_d2[igc!=igc[1] ]=np.nan Or, if you want to preserve the original data, index it with a boolean array: under = (ig_d2 <= ig_bdry) plt.plot(vg[under], ig_d2[under]) If you need to determine the intersection more precisely, you could define a function of vg, V, L, Ts, and d that returns the difference between ig_CRM and ig_CCM for those parameters, then use a root-finding routine [1] to numerically find the vg for which that function returns essentially zero. [1] http://docs.scipy.org/doc/scipy/reference/optimize.html#root-finding |
From: Michael D. <md...@st...> - 2012-05-31 15:21:48
|
On 05/31/2012 10:12 AM, Tony Yu wrote: > > > On Thu, May 31, 2012 at 10:03 AM, Mark Bakker <ma...@gm... > <mailto:ma...@gm...>> wrote: > > OK. Got it. That is not what I was looking for. > > But, why the leading $ sign? Just as an example? The $ sign shows > up in the cursor coordinate now. Is that what was supposed to > happen (it is confusing with the $ sign also being used for > mathtext formatting, as you know). > > Thanks, > > Mark > > I'm guessing that the example was displaying millions of dollars along > the y-axis. The dollar sign can be confusing, but it's nice to know > that the mathtext parser doesn't get confused ;) > The mathtext parser doesn't kick in unless there is a *pair* of dollar signs. Mike |
From: Tony Yu <ts...@gm...> - 2012-05-31 14:13:06
|
On Thu, May 31, 2012 at 10:03 AM, Mark Bakker <ma...@gm...> wrote: > OK. Got it. That is not what I was looking for. > > But, why the leading $ sign? Just as an example? The $ sign shows up in > the cursor coordinate now. Is that what was supposed to happen (it is > confusing with the $ sign also being used for mathtext formatting, as you > know). > > Thanks, > > Mark > > I'm guessing that the example was displaying millions of dollars along the y-axis. The dollar sign can be confusing, but it's nice to know that the mathtext parser doesn't get confused ;) -Tony |
From: Mark B. <ma...@gm...> - 2012-05-31 14:03:31
|
OK. Got it. That is not what I was looking for. But, why the leading $ sign? Just as an example? The $ sign shows up in the cursor coordinate now. Is that what was supposed to happen (it is confusing with the $ sign also being used for mathtext formatting, as you know). Thanks, Mark On Thu, May 31, 2012 at 3:49 PM, Tony Yu <ts...@gm...> wrote: > > > On Thu, May 31, 2012 at 9:31 AM, Mark Bakker <ma...@gm...> wrote: > >> I looked at the example of overriding the default reporting of coords, >> which is here: >> >> http://matplotlib.sourceforge.net/examples/pylab_examples/coords_report.html >> >> from pylab import * >> >> def millions(x): >> return '$%1.1fM' % (x*1e-6) >> >> x = rand(20) >> y = 1e7*rand(20) >> >> ax = subplot(111) >> ax.fmt_ydata = millions >> plot(x, y, 'o') >> >> show() >> >> I don't understand what the millions function does (with a $ and M ?). >> In fact, I get the exact same result when I delete the line >> >> ax.fmt_ydata = millions >> >> Any thoughts? >> > > Hi Mark, > > It's a bit confusing, but there's actually two different types of > formatters. You're most likely looking for major/minor tick formatters ( > example<http://matplotlib.sourceforge.net/examples/api/engineering_formatter.html>). > In the above example, the *cursor coordinate* is reformatted. In an > interactive window, you should see the current cursor position in the lower > left (this may depend on the backend)---that's the value that should be > reformatted by the `millions` function. > > Best, > -Tony > > |
From: Tony Yu <ts...@gm...> - 2012-05-31 13:50:39
|
On Thu, May 31, 2012 at 9:31 AM, Mark Bakker <ma...@gm...> wrote: > I looked at the example of overriding the default reporting of coords, > which is here: > > http://matplotlib.sourceforge.net/examples/pylab_examples/coords_report.html > > from pylab import * > > def millions(x): > return '$%1.1fM' % (x*1e-6) > > x = rand(20) > y = 1e7*rand(20) > > ax = subplot(111) > ax.fmt_ydata = millions > plot(x, y, 'o') > > show() > > I don't understand what the millions function does (with a $ and M ?). > In fact, I get the exact same result when I delete the line > > ax.fmt_ydata = millions > > Any thoughts? > Hi Mark, It's a bit confusing, but there's actually two different types of formatters. You're most likely looking for major/minor tick formatters ( example<http://matplotlib.sourceforge.net/examples/api/engineering_formatter.html>). In the above example, the *cursor coordinate* is reformatted. In an interactive window, you should see the current cursor position in the lower left (this may depend on the backend)---that's the value that should be reformatted by the `millions` function. Best, -Tony |
From: Mark B. <ma...@gm...> - 2012-05-31 13:32:03
|
I looked at the example of overriding the default reporting of coords, which is here: http://matplotlib.sourceforge.net/examples/pylab_examples/coords_report.html from pylab import * def millions(x): return '$%1.1fM' % (x*1e-6) x = rand(20) y = 1e7*rand(20) ax = subplot(111) ax.fmt_ydata = millions plot(x, y, 'o') show() I don't understand what the millions function does (with a $ and M ?). In fact, I get the exact same result when I delete the line ax.fmt_ydata = millions Any thoughts? |
From: Fabrice S. <si...@lm...> - 2012-05-31 09:11:59
|
Le jeudi 31 mai 2012 à 09:31 +0300, Yasin Selçuk Berber a écrit : > im getting that result. > but just wanted to know, could "takes first row and put it most > bottom....then take second....etc" expression be accepted as harmless or > not. Seems to, it depends on the interpretation of the expression :) If you are thinking about data copying, IMO there is no extra copy of the data compared to any other origin choice. You could also say that rows of the array are displayed bottom-up for origin='lower' and top-down for origin='upper' |
From: Yasin S. B. <yas...@gm...> - 2012-05-31 06:31:11
|
im getting that result. but just wanted to know, could "takes first row and put it most bottom....then take second....etc" expression be accepted as harmless or not. 2012/5/30 Tony Yu <ts...@gm...> > > On Tue, May 29, 2012 at 5:31 AM, Yasin Selçuk Berber < > yas...@gm...> wrote: > >> >> Hi. I want to make sure how imshow shows a numpy array as image. >> >> lets say below is our numpy data array where letter represent data values >> and numbers represent row/col indices. >> >> 0 1 2 >> 0 a b c >> 1 d e f >> 2 g h i >> >> and lets think imshow's origin is default upper left. >> Now, if we show our data as an image, the orientation of visual >> representation of data shouldt change, >> and seen like below, right? >> >> 0 1 2 >> 0 a b c >> 1 d e f >> 2 g h i >> >> But if we pass origin="lower" keyword to imshow, (as in basemap by >> default); >> is this what we expect to see ? >> >> 0 1 2 >> 2 g h i >> 1 d e f >> 0 a b c >> >> To be clear, does imshow with "lower" keyword value; >> >> 1-takes first row of data and put it most bottom, >> 2-then take second row and put it one row upper from most bottom.....etc ? >> >> Thanks. >> >> -- >> Yasin Selçuk Berber >> "Bismillah, her hayrın başıdır." >> >> > Hi Yasin, > > Yes, your interpretation looks correct to me. Image coordinates typically > have an origin at the upper left and increase downward and to the right. > Setting `origin='lower' ` essentially changes `imshow` to use data > coordinates, which typically have an origin at the bottom left and increase > upward and to the right. > > Do you expect (or get) something different? > > Best, > -Tony > > -- Yasin Selçuk Berber "Bismillah, her hayrın başıdır." |
From: solarg <sol...@gm...> - 2012-05-31 04:28:52
|
hello all, i've tried it on my laptop, but got this error at the last line: >>> fig.savefig('samplefigure', bbox_extra_artists=(lgd,), bbox_inches='tight') Traceback (most recent call last): File "<console>", line 1, in <module> File "/Users/me/python/virtualenv/bmfvca6/lib/python2.6/site-packages/matplotlib/figure.py", line 1084, in savefig self.canvas.print_figure(*args, **kwargs) File "/Users/me/python/virtualenv/bmfvca6/lib/python2.6/site-packages/matplotlib/backend_bases.py", line 1894, in print_figure in kwargs.pop("bbox_extra_artists", [])] TypeError: get_window_extent() takes exactly 1 argument (2 given) does it mean that i need to upgrade to python 2.7 ? thanks in advance for help, gerard |
From: Benjamin R. <ben...@ou...> - 2012-05-31 02:20:53
|
On Wednesday, May 30, 2012, Amanda Stott wrote: > Hello, > > I am trying to build matplotlib from source on CentOS. I have installed > all the dependencies, including numpy, freetype, libpng, etc. I also have > both the C and C++ compiler (gcc and cgg-c++) installed in /usr/lib/. > However when running python setup.py install I get the following error > message: > > pymods ['pylab'] > packages ['matplotlib', 'matplotlib.backends', > 'matplotlib.backends.qt4_editor', 'matplotlib.projections', > 'matplotlib.testing', 'matplotlib.testing.jpl_units', 'matplotlib.tests', > 'mpl_toolkits', 'mpl_toolkits.mplot3d', 'mpl_toolkits.axes_grid', > 'mpl_toolkits.axes_grid1', 'mpl_toolkits.axisartist', > 'matplotlib.sphinxext', 'matplotlib.tri', 'matplotlib.delaunay', 'pytz', > 'dateutil', 'dateutil.zoneinfo'] > running install > running build > running build_py > copying lib/matplotlib/mpl-data/matplotlibrc -> > build/lib.linux-x86_64-2.4/matplotlib/mpl-data > copying lib/matplotlib/mpl-data/matplotlib.conf -> > build/lib.linux-x86_64-2.4/matplotlib/mpl-data > running build_ext > building 'matplotlib.ft2font' extension > c++ -pthread -shared build/temp.linux-x86_64-2.4/src/ft2font.o > build/temp.linux-x86_64-2.4/src/mplutils.o > build/temp.linux-x86_64-2.4/CXX/IndirectPythonInterface.o > build/temp.linux-x86_64-2.4/CXX/cxxsupport.o > build/temp.linux-x86_64-2.4/CXX/cxx_extensions.o > build/temp.linux-x86_64-2.4/CXX/cxxextensions.o -L/usr/local/lib -L/usr/lib > -L/usr/local/lib64 -L/usr/lib64 -lfreetype -lz -lstdc++ -lm -o > build/lib.linux-x86_64-2.4/matplotlib/ft2font.so > /usr/bin/ld: cannot find -lz > collect2: ld returned 1 exit status > error: command 'c++' failed with exit status 1 > > I have scoured the web with no solution. Please HELP! > > Thanks, > > -- > Amanda Stott > > The error indicates that it can't find libz, which is extremely odd because if you didnt have it, then most everything else would never work. Which centos are you using? How did you install your dependencies? Ben Root |
From: Amanda S. <co...@gm...> - 2012-05-30 18:39:19
|
Hello, I am trying to build matplotlib from source on CentOS. I have installed all the dependencies, including numpy, freetype, libpng, etc. I also have both the C and C++ compiler (gcc and cgg-c++) installed in /usr/lib/. However when running python setup.py install I get the following error message: pymods ['pylab'] packages ['matplotlib', 'matplotlib.backends', 'matplotlib.backends.qt4_editor', 'matplotlib.projections', 'matplotlib.testing', 'matplotlib.testing.jpl_units', 'matplotlib.tests', 'mpl_toolkits', 'mpl_toolkits.mplot3d', 'mpl_toolkits.axes_grid', 'mpl_toolkits.axes_grid1', 'mpl_toolkits.axisartist', 'matplotlib.sphinxext', 'matplotlib.tri', 'matplotlib.delaunay', 'pytz', 'dateutil', 'dateutil.zoneinfo'] running install running build running build_py copying lib/matplotlib/mpl-data/matplotlibrc -> build/lib.linux-x86_64-2.4/matplotlib/mpl-data copying lib/matplotlib/mpl-data/matplotlib.conf -> build/lib.linux-x86_64-2.4/matplotlib/mpl-data running build_ext building 'matplotlib.ft2font' extension c++ -pthread -shared build/temp.linux-x86_64-2.4/src/ft2font.o build/temp.linux-x86_64-2.4/src/mplutils.o build/temp.linux-x86_64-2.4/CXX/IndirectPythonInterface.o build/temp.linux-x86_64-2.4/CXX/cxxsupport.o build/temp.linux-x86_64-2.4/CXX/cxx_extensions.o build/temp.linux-x86_64-2.4/CXX/cxxextensions.o -L/usr/local/lib -L/usr/lib -L/usr/local/lib64 -L/usr/lib64 -lfreetype -lz -lstdc++ -lm -o build/lib.linux-x86_64-2.4/matplotlib/ft2font.so /usr/bin/ld: cannot find -lz collect2: ld returned 1 exit status error: command 'c++' failed with exit status 1 I have scoured the web with no solution. Please HELP! Thanks, -- Amanda Stott |
From: Tony Yu <ts...@gm...> - 2012-05-30 14:05:48
|
On Tue, May 29, 2012 at 5:31 AM, Yasin Selçuk Berber <yas...@gm...>wrote: > > Hi. I want to make sure how imshow shows a numpy array as image. > > lets say below is our numpy data array where letter represent data values > and numbers represent row/col indices. > > 0 1 2 > 0 a b c > 1 d e f > 2 g h i > > and lets think imshow's origin is default upper left. > Now, if we show our data as an image, the orientation of visual > representation of data shouldt change, > and seen like below, right? > > 0 1 2 > 0 a b c > 1 d e f > 2 g h i > > But if we pass origin="lower" keyword to imshow, (as in basemap by > default); > is this what we expect to see ? > > 0 1 2 > 2 g h i > 1 d e f > 0 a b c > > To be clear, does imshow with "lower" keyword value; > > 1-takes first row of data and put it most bottom, > 2-then take second row and put it one row upper from most bottom.....etc ? > > Thanks. > > -- > Yasin Selçuk Berber > "Bismillah, her hayrın başıdır." > > Hi Yasin, Yes, your interpretation looks correct to me. Image coordinates typically have an origin at the upper left and increase downward and to the right. Setting `origin='lower' ` essentially changes `imshow` to use data coordinates, which typically have an origin at the bottom left and increase upward and to the right. Do you expect (or get) something different? Best, -Tony |
From: Umut Y. <yi...@st...> - 2012-05-29 20:49:30
|
Dear Benjamin, Thanks for the reply. Apparently my Python 2.6 version was completely removed and I only have Python 2.7. My matplotlib and numpy are the latest versions. In matplotlib homepage, I found that meshgrid should do the same job, but I cannot make script to run it from a file. Is there a simple way to do contour plotting on a simple 3 column file (x, y, z) where I gave a link to the table file in my previous email? Thanks a lot Umut > First, if you were importing griddata before like that, that it is quite > likely that it was some other module that was installed in your > python-2.6/site-packages directory that overrode numpy's griddata. When you > upgraded, that griddata module could not be found in > python-2.7/site-packages. Commenting it out allowed python to find pylab's > griddata. > > Second, you really need to clean up your imports. There is no need for the > two math imports, or the numpy import (because the pylab import handles > that). > > Oddly, though, your griddata import comes before the pylab import. I would > expect that the pylab griddata would have overridden the first griddata > import. And so there shouldn't have been a difference. > > Did you happen to upgrade matplotlib and/or numpy as well? > > Ben Root > > |
From: Francesco M. <fra...@go...> - 2012-05-29 12:24:30
|
2012/5/29 Fabien Lafont <laf...@gm...>: > Thx Francesco, it works great! > > What for the .T at the end of genfromtxt? genfromtxt with usecols=(0,1) return an array with 2 columns. with .T you transpose it so that you can save it in two variables. For more info, e.g., http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.T.html#numpy-ndarray-t Cheers, Francesco > > > > 2012/5/29 Francesco Montesano <fra...@go...>: >> Dear Fabien >> >> 2012/5/29 Fabien Lafont <laf...@gm...>: >>> Hello everyone, >>> >>> I have a problem. I have to look at many plots. Usely I do it like that: >>> >>> from pylab import* >>> >>> X1 = genfromtxt("Myfile.dat", usecols =(0)) >>> Y1 = genfromtxt("Myfile.dat", usecols =(1)) >>> plot(X1,Y1, label ="My curve") >>> >>> show() >>> >>> >>> But the problem is when I have many plots I have to copy paste and >>> change manually all the name of the variables X1, X2, X3...etc. It's >>> not really convenient. >>> I want to create a def with the name of my file as argument which do >>> something like that: >>> >>> from pylab import* >>> >>> def plotgraph(name): >>> X_name = genfromtxt("name", usecols =(0)) >>> Y_name = genfromtxt("name", usecols =(1)) >>> plot(X_name,Y_name, label ="name") >>> >>> plotgraph(MyFile) >>> >>> show() >>> >> >> Try this: >> >> def plotgraph(name): >> """Plot stuff: >> name: string >> file name >> """ >> X_name, Y_name = genfromtxt(name, usecols =(0,1)).T >> plot(X_name,Y_name, label =name) >> >> 'name' should contain already a string, so you have to pass it to >> genfromtxt. I you pass "name", the file name is "name" and not the >> what is in the variable. >> Just a note: if you read the file as 'X_name, Y_name = >> genfromtxt(name, usecols =(0,1)).T' you open, read and close the file >> only once. >> >> Cheers, >> Francesco >> >> >>> But it doesn't work. Do you know why? Do you have a smarter idea? >>> >>> Thanks! >>> >>> Fab >>> >>> ------------------------------------------------------------------------------ >>> Live Security Virtual Conference >>> Exclusive live event will cover all the ways today's security and >>> threat landscape has changed and how IT managers can respond. Discussions >>> will include endpoint security, mobile security and the latest in malware >>> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >>> _______________________________________________ >>> Matplotlib-users mailing list >>> Mat...@li... >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> >> >> >> -- >> personals: mon...@ya..., mon...@ho... (messenger), >> fra...@go.... >> work: mon...@mp... >> >> http://picasaweb.google.it/franz.bergesund -- personals: mon...@ya..., mon...@ho... (messenger), fra...@go.... work: mon...@mp... http://picasaweb.google.it/franz.bergesund |
From: Fabien L. <laf...@gm...> - 2012-05-29 12:14:12
|
Thx Francesco, it works great! What for the .T at the end of genfromtxt? 2012/5/29 Francesco Montesano <fra...@go...>: > Dear Fabien > > 2012/5/29 Fabien Lafont <laf...@gm...>: >> Hello everyone, >> >> I have a problem. I have to look at many plots. Usely I do it like that: >> >> from pylab import* >> >> X1 = genfromtxt("Myfile.dat", usecols =(0)) >> Y1 = genfromtxt("Myfile.dat", usecols =(1)) >> plot(X1,Y1, label ="My curve") >> >> show() >> >> >> But the problem is when I have many plots I have to copy paste and >> change manually all the name of the variables X1, X2, X3...etc. It's >> not really convenient. >> I want to create a def with the name of my file as argument which do >> something like that: >> >> from pylab import* >> >> def plotgraph(name): >> X_name = genfromtxt("name", usecols =(0)) >> Y_name = genfromtxt("name", usecols =(1)) >> plot(X_name,Y_name, label ="name") >> >> plotgraph(MyFile) >> >> show() >> > > Try this: > > def plotgraph(name): > """Plot stuff: > name: string > file name > """ > X_name, Y_name = genfromtxt(name, usecols =(0,1)).T > plot(X_name,Y_name, label =name) > > 'name' should contain already a string, so you have to pass it to > genfromtxt. I you pass "name", the file name is "name" and not the > what is in the variable. > Just a note: if you read the file as 'X_name, Y_name = > genfromtxt(name, usecols =(0,1)).T' you open, read and close the file > only once. > > Cheers, > Francesco > > >> But it doesn't work. Do you know why? Do you have a smarter idea? >> >> Thanks! >> >> Fab >> >> ------------------------------------------------------------------------------ >> Live Security Virtual Conference >> Exclusive live event will cover all the ways today's security and >> threat landscape has changed and how IT managers can respond. Discussions >> will include endpoint security, mobile security and the latest in malware >> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >> _______________________________________________ >> Matplotlib-users mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > > -- > personals: mon...@ya..., mon...@ho... (messenger), > fra...@go.... > work: mon...@mp... > > http://picasaweb.google.it/franz.bergesund |
From: Francesco M. <fra...@go...> - 2012-05-29 11:55:30
|
Dear Fabien 2012/5/29 Fabien Lafont <laf...@gm...>: > Hello everyone, > > I have a problem. I have to look at many plots. Usely I do it like that: > > from pylab import* > > X1 = genfromtxt("Myfile.dat", usecols =(0)) > Y1 = genfromtxt("Myfile.dat", usecols =(1)) > plot(X1,Y1, label ="My curve") > > show() > > > But the problem is when I have many plots I have to copy paste and > change manually all the name of the variables X1, X2, X3...etc. It's > not really convenient. > I want to create a def with the name of my file as argument which do > something like that: > > from pylab import* > > def plotgraph(name): > X_name = genfromtxt("name", usecols =(0)) > Y_name = genfromtxt("name", usecols =(1)) > plot(X_name,Y_name, label ="name") > > plotgraph(MyFile) > > show() > Try this: def plotgraph(name): """Plot stuff: name: string file name """ X_name, Y_name = genfromtxt(name, usecols =(0,1)).T plot(X_name,Y_name, label =name) 'name' should contain already a string, so you have to pass it to genfromtxt. I you pass "name", the file name is "name" and not the what is in the variable. Just a note: if you read the file as 'X_name, Y_name = genfromtxt(name, usecols =(0,1)).T' you open, read and close the file only once. Cheers, Francesco > But it doesn't work. Do you know why? Do you have a smarter idea? > > Thanks! > > Fab > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- personals: mon...@ya..., mon...@ho... (messenger), fra...@go.... work: mon...@mp... http://picasaweb.google.it/franz.bergesund |
From: Fabien L. <laf...@gm...> - 2012-05-29 11:46:09
|
Hello everyone, I have a problem. I have to look at many plots. Usely I do it like that: from pylab import* X1 = genfromtxt("Myfile.dat", usecols =(0)) Y1 = genfromtxt("Myfile.dat", usecols =(1)) plot(X1,Y1, label ="My curve") show() But the problem is when I have many plots I have to copy paste and change manually all the name of the variables X1, X2, X3...etc. It's not really convenient. I want to create a def with the name of my file as argument which do something like that: from pylab import* def plotgraph(name): X_name = genfromtxt("name", usecols =(0)) Y_name = genfromtxt("name", usecols =(1)) plot(X_name,Y_name, label ="name") plotgraph(MyFile) show() But it doesn't work. Do you know why? Do you have a smarter idea? Thanks! Fab |
From: Yasin S. B. <yas...@gm...> - 2012-05-29 09:31:52
|
Hi. I want to make sure how imshow shows a numpy array as image. lets say below is our numpy data array where letter represent data values and numbers represent row/col indices. 0 1 2 0 a b c 1 d e f 2 g h i and lets think imshow's origin is default upper left. Now, if we show our data as an image, the orientation of visual representation of data shouldt change, and seen like below, right? 0 1 2 0 a b c 1 d e f 2 g h i But if we pass origin="lower" keyword to imshow, (as in basemap by default); is this what we expect to see ? 0 1 2 2 g h i 1 d e f 0 a b c To be clear, does imshow with "lower" keyword value; 1-takes first row of data and put it most bottom, 2-then take second row and put it one row upper from most bottom.....etc ? Thanks. -- Yasin Selçuk Berber "Bismillah, her hayrın başıdır." |
From: Martin S. <gm...@ms...> - 2012-05-29 06:35:18
|
On 12-02-07 08:40 AM, Michael Droettboom wrote: > On 02/07/2012 10:48 AM, Benjamin Root wrote: >> >> >> On Tue, Feb 7, 2012 at 8:33 AM, Fabien Lafont >> <laf...@gm... >> <mailto:laf...@gm...>> wrote: >> >> Is it possible to set the extension .pdf as defaut when I save an >> image using the matplotlib bar. My coworkers are always saving the >> image in png and it's really ugly! >> >> Thx, >> >> Fab >> >> >> Interesting request. Looking through the backends, it appears that only the >> Cairo backend currently supports a configurable rcParam for the default >> filetype ('cairo.format'). All backends implement a "get_default_filetype()" >> method for their canvases, but most of them have that default hard-coded as >> "png". This really only makes sense for backends like agg, pdf, ps and such. >> >> Devs - Maybe we should consider fixing this for the non-fileformat specific >> backends? Do we want an rcParam for each backend? Or a single rcParam for >> default filetypes and deprecate 'cairo.format'? > > I would definitely lean toward the latter -- unify it under a single rcParam. > > Mike Sorry for posting to an old thread, but I just submitted a pull request that implements this, AFAICT: https://github.com/matplotlib/matplotlib/pull/907 Martin |
From: Jouni K. S. <jk...@ik...> - 2012-05-28 18:30:19
|
Felix Patzelt <fe...@ne...> writes: > Matplotlib-Version: 1.1.0 If that's the released version and not something from git, it does not have one possibly related fix. Could you try cherry-picking commit 09293bf from github, or applying the following patch. |
From: Jouni K. S. <jk...@ik...> - 2012-05-28 18:24:54
|
Jouni K. Seppänen <jk...@ik...> writes: > Felix Patzelt <fe...@ne...> writes: > >> I just ran into the following Bug: When choosing Qt4Agg as my backend >> in the matplotlibrc, using TeX will break matplotlib. > > Could you run your test script with --verbose-debug, redirect the output > to a file and send it to me (off-list; it will be a large file)? Got it, thanks. This looks really odd: with both MacOSX and QT4Agg backends, kpsewhich finds some TeX-related files, but with QT4Agg some files are not found. It doesn't look like a simple matter of wrong paths or anything like that, because then it would not find any files. We have had multiple problems related to Qt and subprocesses. Some Googling suggests that such problems are quite prevalent and might not be easy to solve. -- Jouni K. Seppänen http://www.iki.fi/jks |
From: Jouni K. S. <jk...@ik...> - 2012-05-28 14:10:33
|
Felix Patzelt <fe...@ne...> writes: > I just ran into the following Bug: When choosing Qt4Agg as my backend > in the matplotlibrc, using TeX will break matplotlib. Could you run your test script with --verbose-debug, redirect the output to a file and send it to me (off-list; it will be a large file)? -- Jouni K. Seppänen http://www.iki.fi/jks |
From: Felix P. <fe...@ne...> - 2012-05-28 12:02:17
|
Hi, I just ran into the following Bug: When choosing Qt4Agg as my backend in the matplotlibrc, using TeX will break matplotlib. When choosing backend: MacOSX, everything works fine. The QT4Agg backend also works fine as long as I'm not using TeX. Here is a fairly minimal example: ######### file: killqtmpl.py ######### import pylab as plt import time print "This works" plt.rcdefaults() plt.plot([1,2,3]) plt.show() time.sleep(2) plt.close() print "This won't work with qt4agg" plt.rc('font', family='sans-serif') plt.rc('text', usetex=True) plt.rcParams['text.latex.preamble']=r""" \usepackage[tx]{sfmath} \usepackage{helvet} """ plt.plot([1,2,3]) plt.show() time.sleep(2) plt.close() print "This won't either" plt.rc('font', family='serif') plt.rcParams['text.latex.preamble']=r"\usepackage{mathptmx}" plt.plot([1,2,3]) plt.show() ############################# So, when i run the above script using the MacOSX backend, it displays the same figure (a blue line) three times and outputs: ------- This works This won't work with qt4agg This won't either ------- Now when using Qt4Agg, only the first figure will get displayed and the following error messages appear: ------- In [1]: run killqtmpl.py This works This won't work with qt4agg ERROR: An unexpected error occurred while tokenizing input The following traceback may be corrupted or invalid The error message is: ('EOF in multi-line statement', (17, 0)) ERROR: An unexpected error occurred while tokenizing input The following traceback may be corrupted or invalid The error message is: ('EOF in multi-line statement', (15, 0)) --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_qt4agg.pyc in paintEvent(self, e) 80 81 if self.replot: ---> 82 FigureCanvasAgg.draw(self) 83 self.replot = False 84 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in draw(self) 399 400 self.renderer = self.get_renderer() --> 401 self.figure.draw(self.renderer) 402 403 def get_renderer(self): /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs) 53 def draw_wrapper(artist, renderer, *args, **kwargs): 54 before(artist, renderer) ---> 55 draw(artist, renderer, *args, **kwargs) 56 after(artist, renderer) 57 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/figure.pyc in draw(self, renderer) 882 dsu.sort(key=itemgetter(0)) 883 for zorder, func, args in dsu: --> 884 func(*args) 885 886 renderer.close_group('figure') /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs) 53 def draw_wrapper(artist, renderer, *args, **kwargs): 54 before(artist, renderer) ---> 55 draw(artist, renderer, *args, **kwargs) 56 after(artist, renderer) 57 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axes.pyc in draw(self, renderer, inframe) 1981 1982 for zorder, a in dsu: -> 1983 a.draw(renderer) 1984 1985 renderer.close_group('axes') /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs) 53 def draw_wrapper(artist, renderer, *args, **kwargs): 54 before(artist, renderer) ---> 55 draw(artist, renderer, *args, **kwargs) 56 after(artist, renderer) 57 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axis.pyc in draw(self, renderer, *args, **kwargs) 1035 1036 ticks_to_draw = self._update_ticks(renderer) -> 1037 ticklabelBoxes, ticklabelBoxes2 = self._get_tick_bboxes(ticks_to_draw, renderer) 1038 1039 for tick in ticks_to_draw: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axis.pyc in _get_tick_bboxes(self, ticks, renderer) 986 for tick in ticks: 987 if tick.label1On and tick.label1.get_visible(): --> 988 extent = tick.label1.get_window_extent(renderer) 989 ticklabelBoxes.append(extent) 990 if tick.label2On and tick.label2.get_visible(): /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/text.pyc in get_window_extent(self, renderer, dpi) 745 raise RuntimeError('Cannot get window extent w/o renderer') 746 --> 747 bbox, info = self._get_layout(self._renderer) 748 x, y = self.get_position() 749 x, y = self.get_transform().transform_point((x, y)) /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/text.pyc in _get_layout(self, renderer) 307 w, h, d = get_text_width_height_descent(clean_line, 308 self._fontproperties, --> 309 ismath=ismath) 310 else: 311 w, h, d = 0, 0, 0 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in get_text_width_height_descent(self, s, prop, ismath) 172 fontsize = prop.get_size_in_points() 173 w, h, d = texmanager.get_text_width_height_descent(s, fontsize, --> 174 renderer=self) 175 return w, h, d 176 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/texmanager.pyc in get_text_width_height_descent(self, tex, fontsize, renderer) 606 dvifile = self.make_dvi(tex, fontsize) 607 dvi = dviread.Dvi(dvifile, 72*dpi_fraction) --> 608 page = iter(dvi).next() 609 dvi.close() 610 # A total height (including the descent) needs to be returned. /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in __iter__(self) 63 """ 64 while True: ---> 65 have_page = self._read() 66 if have_page: 67 yield self._output() /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _read(self) 119 while True: 120 byte = ord(self.file.read(1)) --> 121 self._dispatch(byte) 122 # if self.state == _dvistate.inpage: 123 # matplotlib.verbose.report( /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _dispatch(self, byte) 207 c, s, d, a, l = [ self._arg(x) for x in (4, 4, 4, 1, 1) ] 208 n = self.file.read(a+l) --> 209 self._fnt_def(k, c, s, d, a, l, n) 210 elif byte == 247: 211 i, num, den, mag, k = [ self._arg(x) for x in (1, 4, 4, 4, 1) ] /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _fnt_def(self, k, c, s, d, a, l, n) 368 # (d, tfm.design_size, n) 369 --> 370 vf = _vffile(n[-l:]) 371 372 self.fonts[k] = DviFont(scale=s, tfm=tfm, texname=n, vf=vf) /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _vffile(texname) 879 880 def _vffile(texname): --> 881 return _fontfile(texname, Vf, '.vf', _vfcache) 882 883 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _fontfile(texname, class_, suffix, cache) 868 filename = find_tex_file(texname + suffix) 869 if filename: --> 870 result = class_(filename) 871 else: 872 result = None /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in __init__(self, filename) 477 self._chars = {} 478 self._packet_ends = None --> 479 self._read() 480 self.close() 481 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _read(self) 119 while True: 120 byte = ord(self.file.read(1)) --> 121 self._dispatch(byte) 122 # if self.state == _dvistate.inpage: 123 # matplotlib.verbose.report( /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _dispatch(self, byte) 506 self._init_packet(pl, cc, tfm) 507 elif 243 <= byte <= 246: --> 508 Dvi._dispatch(self, byte) 509 elif byte == 247: # preamble 510 i, k = self._arg(1), self._arg(1) /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _dispatch(self, byte) 207 c, s, d, a, l = [ self._arg(x) for x in (4, 4, 4, 1, 1) ] 208 n = self.file.read(a+l) --> 209 self._fnt_def(k, c, s, d, a, l, n) 210 elif byte == 247: 211 i, num, den, mag, k = [ self._arg(x) for x in (1, 4, 4, 4, 1) ] /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _fnt_def(self, k, *args) 544 545 def _fnt_def(self, k, *args): --> 546 Dvi._fnt_def(self, k, *args) 547 if self._first_font is None: 548 self._first_font = k /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _fnt_def(self, k, c, s, d, a, l, n) 370 vf = _vffile(n[-l:]) 371 --> 372 self.fonts[k] = DviFont(scale=s, tfm=tfm, texname=n, vf=vf) 373 374 def _post(self): /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in __init__(self, scale, tfm, texname, vf) 416 self.size = scale * (72.0 / (72.27 * 2**16)) 417 try: --> 418 nchars = max(tfm.width.iterkeys()) + 1 419 except ValueError: 420 nchars = 0 AttributeError: 'NoneType' object has no attribute 'width' This won't either --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_qt4agg.pyc in paintEvent(self, e) 80 81 if self.replot: ---> 82 FigureCanvasAgg.draw(self) 83 self.replot = False 84 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in draw(self) 399 400 self.renderer = self.get_renderer() --> 401 self.figure.draw(self.renderer) 402 403 def get_renderer(self): /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs) 53 def draw_wrapper(artist, renderer, *args, **kwargs): 54 before(artist, renderer) ---> 55 draw(artist, renderer, *args, **kwargs) 56 after(artist, renderer) 57 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/figure.pyc in draw(self, renderer) 882 dsu.sort(key=itemgetter(0)) 883 for zorder, func, args in dsu: --> 884 func(*args) 885 886 renderer.close_group('figure') /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs) 53 def draw_wrapper(artist, renderer, *args, **kwargs): 54 before(artist, renderer) ---> 55 draw(artist, renderer, *args, **kwargs) 56 after(artist, renderer) 57 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axes.pyc in draw(self, renderer, inframe) 1981 1982 for zorder, a in dsu: -> 1983 a.draw(renderer) 1984 1985 renderer.close_group('axes') /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs) 53 def draw_wrapper(artist, renderer, *args, **kwargs): 54 before(artist, renderer) ---> 55 draw(artist, renderer, *args, **kwargs) 56 after(artist, renderer) 57 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axis.pyc in draw(self, renderer, *args, **kwargs) 1035 1036 ticks_to_draw = self._update_ticks(renderer) -> 1037 ticklabelBoxes, ticklabelBoxes2 = self._get_tick_bboxes(ticks_to_draw, renderer) 1038 1039 for tick in ticks_to_draw: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/axis.pyc in _get_tick_bboxes(self, ticks, renderer) 986 for tick in ticks: 987 if tick.label1On and tick.label1.get_visible(): --> 988 extent = tick.label1.get_window_extent(renderer) 989 ticklabelBoxes.append(extent) 990 if tick.label2On and tick.label2.get_visible(): /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/text.pyc in get_window_extent(self, renderer, dpi) 745 raise RuntimeError('Cannot get window extent w/o renderer') 746 --> 747 bbox, info = self._get_layout(self._renderer) 748 x, y = self.get_position() 749 x, y = self.get_transform().transform_point((x, y)) /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/text.pyc in _get_layout(self, renderer) 307 w, h, d = get_text_width_height_descent(clean_line, 308 self._fontproperties, --> 309 ismath=ismath) 310 else: 311 w, h, d = 0, 0, 0 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in get_text_width_height_descent(self, s, prop, ismath) 172 fontsize = prop.get_size_in_points() 173 w, h, d = texmanager.get_text_width_height_descent(s, fontsize, --> 174 renderer=self) 175 return w, h, d 176 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/texmanager.pyc in get_text_width_height_descent(self, tex, fontsize, renderer) 606 dvifile = self.make_dvi(tex, fontsize) 607 dvi = dviread.Dvi(dvifile, 72*dpi_fraction) --> 608 page = iter(dvi).next() 609 dvi.close() 610 # A total height (including the descent) needs to be returned. /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in __iter__(self) 63 """ 64 while True: ---> 65 have_page = self._read() 66 if have_page: 67 yield self._output() /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _read(self) 119 while True: 120 byte = ord(self.file.read(1)) --> 121 self._dispatch(byte) 122 # if self.state == _dvistate.inpage: 123 # matplotlib.verbose.report( /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _dispatch(self, byte) 207 c, s, d, a, l = [ self._arg(x) for x in (4, 4, 4, 1, 1) ] 208 n = self.file.read(a+l) --> 209 self._fnt_def(k, c, s, d, a, l, n) 210 elif byte == 247: 211 i, num, den, mag, k = [ self._arg(x) for x in (1, 4, 4, 4, 1) ] /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/dviread.pyc in _fnt_def(self, k, c, s, d, a, l, n) 361 def _fnt_def(self, k, c, s, d, a, l, n): 362 tfm = _tfmfile(n[-l:]) --> 363 if c != 0 and tfm.checksum != 0 and c != tfm.checksum: 364 raise ValueError, 'tfm checksum mismatch: %s'%n 365 # It seems that the assumption behind the following check is incorrect: AttributeError: 'NoneType' object has no attribute 'checksum' -------- My system: A Macbook Pro with OS X 10.7.4, 4GB ram. I'm using the latest py27-ipython from macports (@12.1). I also installed the qtconsole dependencies and therefore py27-pyqt4 last week using macports. Darwin macbookpro2009.fritz.box 11.4.0 Darwin Kernel Version 11.4.0: Mon Apr 9 19:32:15 PDT 2012; root:xnu-1699.26.8~1/RELEASE_X86_64 x86_64 Matplotlib-Version: 1.1.0 Backend Qt4Agg version 4.9.1 At the moment I can just stick with the MacOSX backend, but hopefully this message will help someone fix the bug. Best regards, Felix Patzelt |
From: Jerzy K. <jer...@un...> - 2012-05-27 16:56:34
|
Gordon Hardmant : > I ...cannot find a simple way to stop a curve being drawn once it crosses > another curve. In the attached example, I am trying to draw the solid > curve only until it intersects the dashed one. I have tried using the > numpy.where() method, but it does not seem to be the right way to go > about it- I end up having to write FOR loops and so on, and that does > not make use of the vectorization advantages of numpy. Try to insert just before plot(...) the following two lines: igc=np.sign(ig_bdry-ig_d2) ig_d2[igc!=igc[1] ]=np.nan This [1] is a place which discriminates where the difference sign is "good". Of course this will produce some bedlam if there are many intersections. You didn't say whether you want to plot the dashed curve entirely. If not, just truncate all three, the solid, the dashed and the abscissa, where the sign is OK. Good luck. Jerzy Karczmarczuk Caen, France |
From: Tony Yu <ts...@gm...> - 2012-05-25 21:41:51
|
On Friday, May 25, 2012, Jerzy Karczmarczuk wrote: > Tony Yu: > > # rc definitions for dark backgrounds > > lines.color: white > patch.edgecolor: white > > ... > > don't forget to lighten the colours in axes.color_cycle (unless blue on > black, etc. suits you). This is used by plot and was one of my numerous > mistakes two days ago... > > Jerzy Karczmarczuk > > Indeed: blue on black is a fashion faux pas. ;) Also the default color_cycle has black in it, so it should be changed, regardless of aesthetic considerations. -Tony |