You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
(12) |
Sep
(12) |
Oct
(56) |
Nov
(65) |
Dec
(37) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(59) |
Feb
(78) |
Mar
(153) |
Apr
(205) |
May
(184) |
Jun
(123) |
Jul
(171) |
Aug
(156) |
Sep
(190) |
Oct
(120) |
Nov
(154) |
Dec
(223) |
2005 |
Jan
(184) |
Feb
(267) |
Mar
(214) |
Apr
(286) |
May
(320) |
Jun
(299) |
Jul
(348) |
Aug
(283) |
Sep
(355) |
Oct
(293) |
Nov
(232) |
Dec
(203) |
2006 |
Jan
(352) |
Feb
(358) |
Mar
(403) |
Apr
(313) |
May
(165) |
Jun
(281) |
Jul
(316) |
Aug
(228) |
Sep
(279) |
Oct
(243) |
Nov
(315) |
Dec
(345) |
2007 |
Jan
(260) |
Feb
(323) |
Mar
(340) |
Apr
(319) |
May
(290) |
Jun
(296) |
Jul
(221) |
Aug
(292) |
Sep
(242) |
Oct
(248) |
Nov
(242) |
Dec
(332) |
2008 |
Jan
(312) |
Feb
(359) |
Mar
(454) |
Apr
(287) |
May
(340) |
Jun
(450) |
Jul
(403) |
Aug
(324) |
Sep
(349) |
Oct
(385) |
Nov
(363) |
Dec
(437) |
2009 |
Jan
(500) |
Feb
(301) |
Mar
(409) |
Apr
(486) |
May
(545) |
Jun
(391) |
Jul
(518) |
Aug
(497) |
Sep
(492) |
Oct
(429) |
Nov
(357) |
Dec
(310) |
2010 |
Jan
(371) |
Feb
(657) |
Mar
(519) |
Apr
(432) |
May
(312) |
Jun
(416) |
Jul
(477) |
Aug
(386) |
Sep
(419) |
Oct
(435) |
Nov
(320) |
Dec
(202) |
2011 |
Jan
(321) |
Feb
(413) |
Mar
(299) |
Apr
(215) |
May
(284) |
Jun
(203) |
Jul
(207) |
Aug
(314) |
Sep
(321) |
Oct
(259) |
Nov
(347) |
Dec
(209) |
2012 |
Jan
(322) |
Feb
(414) |
Mar
(377) |
Apr
(179) |
May
(173) |
Jun
(234) |
Jul
(295) |
Aug
(239) |
Sep
(276) |
Oct
(355) |
Nov
(144) |
Dec
(108) |
2013 |
Jan
(170) |
Feb
(89) |
Mar
(204) |
Apr
(133) |
May
(142) |
Jun
(89) |
Jul
(160) |
Aug
(180) |
Sep
(69) |
Oct
(136) |
Nov
(83) |
Dec
(32) |
2014 |
Jan
(71) |
Feb
(90) |
Mar
(161) |
Apr
(117) |
May
(78) |
Jun
(94) |
Jul
(60) |
Aug
(83) |
Sep
(102) |
Oct
(132) |
Nov
(154) |
Dec
(96) |
2015 |
Jan
(45) |
Feb
(138) |
Mar
(176) |
Apr
(132) |
May
(119) |
Jun
(124) |
Jul
(77) |
Aug
(31) |
Sep
(34) |
Oct
(22) |
Nov
(23) |
Dec
(9) |
2016 |
Jan
(26) |
Feb
(17) |
Mar
(10) |
Apr
(8) |
May
(4) |
Jun
(8) |
Jul
(6) |
Aug
(5) |
Sep
(9) |
Oct
(4) |
Nov
|
Dec
|
2017 |
Jan
(5) |
Feb
(7) |
Mar
(1) |
Apr
(5) |
May
|
Jun
(3) |
Jul
(6) |
Aug
(1) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
1
(2) |
2
(3) |
3
|
4
(3) |
5
(11) |
6
(3) |
7
(2) |
8
(6) |
9
(6) |
10
(8) |
11
(3) |
12
(7) |
13
(8) |
14
(5) |
15
(11) |
16
(11) |
17
(3) |
18
(2) |
19
(7) |
20
(11) |
21
(6) |
22
(5) |
23
(1) |
24
|
25
|
26
(6) |
27
(3) |
28
(8) |
29
(2) |
30
(1) |
|
On 2012年11月19日 11:42 AM, TP wrote: > Hi everybody, > > I have a problem with LinearSegmentedColormap. > In the example below (see PS), I make a colormap, and use it to plot an > EllipseCollection. My plot is parameterized by a quantity that I have named > "large_value". For large_value equal to 257, a blue point is obtained at > (x=0.3, y=0.4). But for large_value equal to 258, it becomes black. > > This is because of the way LinearSegmentedColormap is working. It has a > parameter N which allows to set the "number of colors": > > http://matplotlib.org/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap > > It is 256 by default, so if I increase N to a greater value, the point remains > blue for large_value equal to 258. > > Now, my real plot (not this dummy example) is such that I need N to be very > large so as to obtain the right colors on my plot, although very few colors > are used at the end. > However, when N is too large, the plot becomes very slow, and a lot of memory > is used; I think because an array is probably built with this size, although > in theory there is no need to construct such a complete array. > > Is there an easy workaround, or have I to study and modify the matplotlib code > myself? It is not entirely clear to me what you are trying to do, but it sounds like increasing N is not the right way to do it. Three things might help you find a better way: 1) The colormap is intended to work with a norm that handles the translation from your data numbers to the 0-1.0 range used to select values from the colormap (with exceptions--see below). You can choose a non-default norm, you can write your own, or you can set the parameters (vmin, vmax) of the standard linear norm. 2) By creating a colormap and calling its set_under, set_over, and set_invalid methods, you can control the colors assigned to data values that your norm maps respectively to negative numbers, numbers greater than 1, and masked values. See http://matplotlib.org/examples/pylab_examples/contourf_demo.html for an example of using set_under and set_over. See http://matplotlib.org/examples/pylab_examples/image_masked.html for another example, and for an example of controlling the norm parameters or using an alternative norm. 3) It is also possible to index directly into the colormap if you use a norm that returns an integer data type. An example of such is the BoundaryNorm. http://matplotlib.org/examples/pylab_examples/multicolored_line.html If all you need is a single assignment of a color to a "large value", then using the set_over method will take care of it. Eric > > Thanks, > > TP > > PS: Here is the test code: > ################## > from pylab import * > from matplotlib.colors import LinearSegmentedColormap > from matplotlib.collections import CircleCollection > > ioff() > large_value = 257 # blue below this value > #large_value = 258 # black above this value > N = 1e5 # 256 by default > > cdict = { 'blue': [(0.0, 0.0, 0.0), > (2*1/large_value, 1, 1) > , (1.0, 1.0, 1.0)] > , 'green': [(0.0, 0.0, 0.0), > (2*1/large_value, 0, 0) > , (1.0, 1.0, 1.0)] > , 'red': [(0.0, 0.0, 0.0), > (2*1/large_value, 0, 0), > (1.0, 1.0, 1.0)] } > > measures= array([[ 0.2, 0.3, 1], > [ 0.3, 0.4, 2], > [ 0.5, 0.6, large_value]]) > > cmap = LinearSegmentedColormap( "cmap foobar" > , cdict > # , N= N ) > ) > > fig = figure() > axes = fig.add_subplot(111) > ec = CircleCollection( [80] > , offsets = measures[:,:2] > , transOffset = axes.transData > ) > > ec.set_array( measures[:,2] ) > ec.set_cmap( cmap ) > axes.add_collection( ec ) > > show() > ################## > > ------------------------------------------------------------------------------ > Monitor your physical, virtual and cloud infrastructure from a single > web console. Get in-depth insight into apps, servers, databases, vmware, > SAP, cloud infrastructure, etc. Download 30-day Free Trial. > Pricing starts from 795ドル for 25 servers or applications! > http://p.sf.net/sfu/zoho_dev2dev_nov > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Hi everybody, I have a problem with LinearSegmentedColormap. In the example below (see PS), I make a colormap, and use it to plot an EllipseCollection. My plot is parameterized by a quantity that I have named "large_value". For large_value equal to 257, a blue point is obtained at (x=0.3, y=0.4). But for large_value equal to 258, it becomes black. This is because of the way LinearSegmentedColormap is working. It has a parameter N which allows to set the "number of colors": http://matplotlib.org/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap It is 256 by default, so if I increase N to a greater value, the point remains blue for large_value equal to 258. Now, my real plot (not this dummy example) is such that I need N to be very large so as to obtain the right colors on my plot, although very few colors are used at the end. However, when N is too large, the plot becomes very slow, and a lot of memory is used; I think because an array is probably built with this size, although in theory there is no need to construct such a complete array. Is there an easy workaround, or have I to study and modify the matplotlib code myself? Thanks, TP PS: Here is the test code: ################## from pylab import * from matplotlib.colors import LinearSegmentedColormap from matplotlib.collections import CircleCollection ioff() large_value = 257 # blue below this value #large_value = 258 # black above this value N = 1e5 # 256 by default cdict = { 'blue': [(0.0, 0.0, 0.0), (2*1/large_value, 1, 1) , (1.0, 1.0, 1.0)] , 'green': [(0.0, 0.0, 0.0), (2*1/large_value, 0, 0) , (1.0, 1.0, 1.0)] , 'red': [(0.0, 0.0, 0.0), (2*1/large_value, 0, 0), (1.0, 1.0, 1.0)] } measures= array([[ 0.2, 0.3, 1], [ 0.3, 0.4, 2], [ 0.5, 0.6, large_value]]) cmap = LinearSegmentedColormap( "cmap foobar" , cdict # , N= N ) ) fig = figure() axes = fig.add_subplot(111) ec = CircleCollection( [80] , offsets = measures[:,:2] , transOffset = axes.transData ) ec.set_array( measures[:,2] ) ec.set_cmap( cmap ) axes.add_collection( ec ) show() ##################
On Mon, Nov 19, 2012 at 7:44 AM, Nelle Varoquaux <nel...@gm...> wrote: > This is not the "correct" way to run the tests. Then that explains it, thanks. >> Does the same thing happen with the following command: >> >> python -c "import matplotlib; matplotlib.test()" No, all tests pass (or fail when they are expected to). > "KnownFailure" is not a "default" nosetest packages. Hence, we have to load > it manually when running the tests. Thanks, makes sense. Cheers Adam
Chao, I'm glad you were able to get what you wanted. I don't know how to add anything to the gallery. -Sterling On Nov 17, 2012, at 3:32AM, Chao YUE wrote: > Hi Sterling, > > Thanks for the help. Now we have a complete script that works as what we want: > > ****labels parallel with the colorbar with colorbar seperated **** > > By the way, is it possible to put in the gallery? > > > from pylab import * > a = np.arange(100).reshape(10,10) > cbarlevel=np.arange(0,101,10) > cs=contourf(a,levels=cbarlevel) > cbar = colorbar() > cbar.set_ticks(cbarlevel) > > #prepare the final label that we want > cbar_label = [] > for i in range(len(cbarlevel)-1): > cbar_label.append(" {0}-{1}".format(cbarlevel[i],cbarlevel[i+1])) > > cbar.set_ticklabels(['']*len(cbarlevel)) #remove the original labels > #set ticks as white; the 'length' parameter is a bit dirty solution > cbar.ax.tick_params(axis='y',left='on',length=10,color='w',width=5) > cbar.outline.remove() #remove the colorbar frame > > #add the label parallel to colorbar; 0.035 to be set by manual observation, a bit dirty solution. > yloc=np.arange(0.035,0.95,0.1) > for l,y in zip(cbar_label,yloc): > cbar.ax.text(1,y,l,transform=cbar.ax.transAxes,ha='left') > > cheers, > > Chao > > On Sat, Nov 17, 2012 at 12:12 AM, Sterling Smith <sm...@fu...> wrote: > Chao, > > If you don't need the tick marks and are only annoyed by their appearance in the colorbar, then I am pasting below our code so far setting the tick length to 0. > > Code so far: > > from pylab import * > fig = figure(2) > fig.clear() > a = np.arange(100).reshape(10,10) > cbarlevel=np.arange(0,101,10) > contourf(a,levels=cbarlevel) > cbar = colorbar() > cbar.set_ticks((cbarlevel[1:]+cbarlevel[:-1])/2.) > > #to manipulate the range: > cbar_label = [] > for i in range(len(cbarlevel)-1): > cbar_label.append("{0}-{1}".format(cbarlevel[i],cbarlevel[i+1])) > > #Then to apply on the colorbar: > cbar.set_ticklabels(cbar_label) > > ax = fig.axes[-1] #This is not as clean as making the axes before the colorbar and passing to the colorbar... > ax.yaxis.set_tick_params(length=0) > > > If you still want the ticks, then you might think of keeping the ticks where you had set them originally, then placing texts (pylab.text) with the transAxes transform, using the following script: > > > from pylab import * > fig = figure(2) > fig.clear() > a = np.arange(100).reshape(10,10) > cbarlevel=np.arange(0,101,10) > contourf(a,levels=cbarlevel) > cbar = colorbar() > #cbar.set_ticks((cbarlevel[1:]+cbarlevel[:-1])/2.) > cbar.set_ticks(cbarlevel) > > #to manipulate the range: > cbar_label = [] > for i in range(len(cbarlevel)-1): > cbar_label.append("{0}-{1}".format(cbarlevel[i],cbarlevel[i+1])) > #cbar_label.append('') > > print cbar_label > #['0-10', '10-20', '20-30', '30-40', '40-50', '50-60', '60-70', '70-80', > #'80-90', '90-100', ''] > > #Then to apply on the colorbar: > cbar.set_ticklabels(['']*len(cbarlevel)) > > ax = fig.axes[-1] > #ax.yaxis.set_tick_params(length=0) > > yloc = linspace(0,1,len(cbar_label)+1) > yloc = yloc[:-1] + yloc[1]/2. > for l,y in zip(cbar_label,yloc): > ax.text(1,y,l,transform=ax.transAxes,ha='left') > draw() > > -Sterling > > On Nov 16, 2012, at 12:58PM, Chao YUE wrote: > > > Thanks Sterling. It's a good idea. > > > > Unluckily, I lose the original ticks and the ticks appeared in the middle. Is there any approach I can keep the original ticks while realizing what has been shown in the figure? > > > > Chao > > > > On Fri, Nov 16, 2012 at 5:47 PM, Sterling Smith <sm...@fu...> wrote: > > Chao, > > > > The secret is positioning your ticks. I list here an untested attempt at putting the labels at the average of the current and next levels: > > > > cbar.set_ticks((cbarlevel[1:]+cbarlevel[:-1])/2.) > > > > Because you have less ticks, then you will want to remove the line > > > > cbar_level.append('') > > > > Hope that helps, > > Sterling > > > > On Nov 16, 2012, at 7:46AM, ChaoYue wrote: > > > > > I have a bit progress, but still not very well. > > > > > > #to have a contourf plot > > > a = np.arange(100).reshape(10,10) > > > cbarlevel=np.arange(0,101,10) > > > contourf(a,levels=cbarlevel) > > > cbar = colorbar() > > > cbar.set_ticks(cbarlevel) > > > > > > #to manipulate the range: > > > cbar_label = [] > > > for i in range(len(cbarlevel)-1): > > > cbar_label.append("{0}-{1}".format(cbarlevel[i],cbarlevel[i+1])) > > > cbar_label.append('') > > > > > > In [54]: print cbar_label > > > ['0-10', '10-20', '20-30', '30-40', '40-50', '50-60', '60-70', '70-80', > > > '80-90', '90-100', ''] > > > > > > #Then to apply on the colorbar: > > > cbar.set_ticklabels(cbar_label) > > > > > > The generated figure is attached. But how can I put the labels a little bit > > > upward to make them parallel with the respective small rectangles in the > > > colorbar? <http://matplotlib.1069221.n5.nabble.com/file/n39786/fig.jpg> > > > > > > > > > > > > > > > > > > -- > > > View this message in context: http://matplotlib.1069221.n5.nabble.com/how-to-put-colorbar-label-beside-the-handle-tp39705p39786.html > > > Sent from the matplotlib - users mailing list archive at Nabble.com. > > > > > > ------------------------------------------------------------------------------ > > > Monitor your physical, virtual and cloud infrastructure from a single > > > web console. Get in-depth insight into apps, servers, databases, vmware, > > > SAP, cloud infrastructure, etc. Download 30-day Free Trial. > > > Pricing starts from 795ドル for 25 servers or applications! > > > http://p.sf.net/sfu/zoho_dev2dev_nov > > > _______________________________________________ > > > Matplotlib-users mailing list > > > Mat...@li... > > > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > > > > > > > > -- > > *********************************************************************************** > > Chao YUE > > Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL) > > UMR 1572 CEA-CNRS-UVSQ > > Batiment 712 - Pe 119 > > 91191 GIF Sur YVETTE Cedex > > Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16 > > ************************************************************************************ > > > > <fig.jpg> > > > > > -- > *********************************************************************************** > Chao YUE > Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL) > UMR 1572 CEA-CNRS-UVSQ > Batiment 712 - Pe 119 > 91191 GIF Sur YVETTE Cedex > Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16 > ************************************************************************************ >
Hello, Hi >> >> When running the testsuite for matplotlib-1.2.0 i.e. >> >> $ nosetests -exe matplotlib >> > This is not the "correct" way to run the tests. You need to run them using: python tests.py I currently have a PR that indicates that in the README > I'm getting a lot of errors of the form: >> >> > Does the same thing happen with the following command: > > python -c "import matplotlib; matplotlib.test()" > That's another way of running the tests on matplotlib. > > I haven't used nosetest before, so I have no clue if it does anything > different than we expect. > "KnownFailure" is not a "default" nosetest packages. Hence, we have to load it manually when running the tests. Hence, all the tests that are known to fail actually fail, so that what we "expect". Cheers, N > > Ben Root > > > > ------------------------------------------------------------------------------ > Monitor your physical, virtual and cloud infrastructure from a single > web console. Get in-depth insight into apps, servers, databases, vmware, > SAP, cloud infrastructure, etc. Download 30-day Free Trial. > Pricing starts from 795ドル for 25 servers or applications! > http://p.sf.net/sfu/zoho_dev2dev_nov > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >
On Sun, Nov 18, 2012 at 5:51 PM, Adam Mercer <ram...@gm...> wrote: > Hi > > When running the testsuite for matplotlib-1.2.0 i.e. > > $ nosetests -exe matplotlib > > I'm getting a lot of errors of the form: > > Does the same thing happen with the following command: python -c "import matplotlib; matplotlib.test()" I haven't used nosetest before, so I have no clue if it does anything different than we expect. Ben Root
Mathew Topper wrote: > Hi, > > I'm interested to know why the pip package manager is not more widely > supported for installation of python packages like matplotlib? > Matplotlib seems to be particularly slowly updated in the Fedora > repositories, for example, so I often find that a source installation is > necessary. I know this isn't especially difficult for the experienced > user, but surely using something like pip would make this process for > accessible for all users of python packages, particularly those that do > not receive much attention from the big distribution maintainers? Yet, > pip doesn't get a mention on the installation documentation of > matplotlib or many other python packs. > > I would love to hear anyone's thoughts on this matter. > > Many Thanks, > > Mat It is dangerous to use pip on fedora, it may result in your next attempt to update the system failing horribly. If you use it, try to install with --user. Unfortunately, this often won't work because pip will then complain when attempting to remove a system version of some dep.