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
(10) |
2
(6) |
3
(1) |
4
(4) |
5
(11) |
6
(19) |
7
(18) |
8
(7) |
9
(9) |
10
(4) |
11
(3) |
12
(5) |
13
(19) |
14
(13) |
15
(21) |
16
(4) |
17
|
18
(5) |
19
(9) |
20
(13) |
21
(7) |
22
|
23
(1) |
24
(3) |
25
|
26
(3) |
27
(1) |
28
(2) |
29
(6) |
30
(5) |
31
|
On Fri, Dec 9, 2011 at 5:23 PM, Tony Yu <ts...@gm...> wrote: > > > On Fri, Dec 9, 2011 at 4:11 PM, Daniel Hyams <dh...@gm...> wrote: > >> I'm sorry, I should have stated the version. I'm using 1.0.0, which just >> returns a list of rectangle artists. >> >> >> On Fri, Dec 9, 2011 at 4:08 PM, Benjamin Root <ben...@ou...> wrote: >> >>> On Fri, Dec 9, 2011 at 2:55 PM, Daniel Hyams <dh...@gm...> wrote: >>> >>>> Tried, but unfortunately it did not make any difference :( >>>> >>>> >>> Just as an interesting point... don't know if it means anything. In >>> v1.1.x, we now return a "BarContainer" from the bar() function. This >>> container subclasses the tuple type, which is why you are still able to >>> treat it like a list. Anyway, this class does a bunch of things that I >>> wonder if it could be interfering with what you are trying to do. Probably >>> not, but still... >>> >>> Ben Root >>> >>> >> >> >> -- >> Daniel Hyams >> dh...@gm... >> > > So I think the problem is that ``plt.bar`` assigns a transform to each > patch (as it should). But then when pass these patches to PatchCollection, > the collection applies it's own transform (but doesn't ignore the patch's > transform, apparently). The solution is to clear out the transform on each > patch---where "clearing" a transform translates to setting it to the > IdentityTransform. > > Below is code that works *on my system*. It sounds like it will work > slightly differently on your system: > > > #!/usr/bin/env python > import numpy > import matplotlib.pyplot as plt > import matplotlib.collections > import matplotlib.transforms as transforms > > > # just generate some data to plot > x = numpy.linspace(0.0,2.0*numpy.pi,10) > y = numpy.sin(x) > > # plot > axes = plt.gca() > bars = plt.bar(x,y,color='red',width=0.1) > > axes.patches = [] > for p in bars.patches: > p.set_transform(transforms.IdentityTransform()) > > ## and create a collection for plotting the rectangles instead. > coll = matplotlib.collections.PatchCollection(bars.patches) > > coll.set_transform(axes.transData) > axes.add_collection(coll, autolim=True) > > plt.xlim(0.0,2.0*numpy.pi) > plt.grid(True) > plt.show() > > > P.S. you don't need the call to set_transform that I accidentally added.
On Fri, Dec 9, 2011 at 4:11 PM, Daniel Hyams <dh...@gm...> wrote: > I'm sorry, I should have stated the version. I'm using 1.0.0, which just > returns a list of rectangle artists. > > > On Fri, Dec 9, 2011 at 4:08 PM, Benjamin Root <ben...@ou...> wrote: > >> On Fri, Dec 9, 2011 at 2:55 PM, Daniel Hyams <dh...@gm...> wrote: >> >>> Tried, but unfortunately it did not make any difference :( >>> >>> >> Just as an interesting point... don't know if it means anything. In >> v1.1.x, we now return a "BarContainer" from the bar() function. This >> container subclasses the tuple type, which is why you are still able to >> treat it like a list. Anyway, this class does a bunch of things that I >> wonder if it could be interfering with what you are trying to do. Probably >> not, but still... >> >> Ben Root >> >> > > > -- > Daniel Hyams > dh...@gm... > So I think the problem is that ``plt.bar`` assigns a transform to each patch (as it should). But then when pass these patches to PatchCollection, the collection applies it's own transform (but doesn't ignore the patch's transform, apparently). The solution is to clear out the transform on each patch---where "clearing" a transform translates to setting it to the IdentityTransform. Below is code that works *on my system*. It sounds like it will work slightly differently on your system: #!/usr/bin/env python import numpy import matplotlib.pyplot as plt import matplotlib.collections import matplotlib.transforms as transforms # just generate some data to plot x = numpy.linspace(0.0,2.0*numpy.pi,10) y = numpy.sin(x) # plot axes = plt.gca() bars = plt.bar(x,y,color='red',width=0.1) axes.patches = [] for p in bars.patches: p.set_transform(transforms.IdentityTransform()) ## and create a collection for plotting the rectangles instead. coll = matplotlib.collections.PatchCollection(bars.patches) coll.set_transform(axes.transData) axes.add_collection(coll, autolim=True) plt.xlim(0.0,2.0*numpy.pi) plt.grid(True) plt.show()
I'm sorry, I should have stated the version. I'm using 1.0.0, which just returns a list of rectangle artists. On Fri, Dec 9, 2011 at 4:08 PM, Benjamin Root <ben...@ou...> wrote: > On Fri, Dec 9, 2011 at 2:55 PM, Daniel Hyams <dh...@gm...> wrote: > >> Tried, but unfortunately it did not make any difference :( >> >> > Just as an interesting point... don't know if it means anything. In > v1.1.x, we now return a "BarContainer" from the bar() function. This > container subclasses the tuple type, which is why you are still able to > treat it like a list. Anyway, this class does a bunch of things that I > wonder if it could be interfering with what you are trying to do. Probably > not, but still... > > Ben Root > > -- Daniel Hyams dh...@gm...
On Fri, Dec 9, 2011 at 2:55 PM, Daniel Hyams <dh...@gm...> wrote: > Tried, but unfortunately it did not make any difference :( > > Just as an interesting point... don't know if it means anything. In v1.1.x, we now return a "BarContainer" from the bar() function. This container subclasses the tuple type, which is why you are still able to treat it like a list. Anyway, this class does a bunch of things that I wonder if it could be interfering with what you are trying to do. Probably not, but still... Ben Root
Tried, but unfortunately it did not make any difference :( On Fri, Dec 9, 2011 at 2:22 PM, Tony Yu <ts...@gm...> wrote: > > > On Fri, Dec 9, 2011 at 2:13 PM, Daniel Hyams <dh...@gm...> wrote: > >> I can't tell if I'm misusing collections here, or if there is a bug. >> Anyway, what I'm trying to do is keep track of a group of rectangles >> generated from a bar plot. Instead of letting there be a large number of >> artists added to the axes, I wanted to just group them into a collection >> and add the collection instead. As in the code below: >> >> #!/usr/bin/env python >> import numpy >> import matplotlib.pyplot as plt >> import matplotlib.collections >> >> # just generate some data to plot >> x = numpy.linspace(0.0,2.0*numpy.pi,10) >> y = numpy.sin(x) >> >> # plot >> axes = plt.gca() >> bars = plt.bar(x,y,color='red',width=0.1) >> >> # strip out all of the newly inserted rectangles >> for b in bars: b.remove() >> >> # and create a collection for plotting the rectangles instead. >> coll = matplotlib.collections.PatchCollection(bars) >> >> axes.artists.append(coll) >> >> plt.xlim(0.0,2.0*numpy.pi) >> plt.grid(True) >> plt.show() >> >> This appears to work at first blush, but if you resize the plot, you can >> tell that the rectangles are just fixed in their location now. I tried >> messing around with setting the transform for the new collection object >> "coll" in different ways, to no avail. Any suggestions welcome ;) >> >> -- >> Daniel Hyams >> dh...@gm... >> >> try transOffset: > > >>> coll = matplotlib.collections.PatchCollection(bars, > transOffset=axes.transData) > > I've always found this a bit clumsy, but I think it's the standard way to > do it. > > -Tony > -- Daniel Hyams dh...@gm...
On Fri, Dec 9, 2011 at 2:13 PM, Daniel Hyams <dh...@gm...> wrote: > I can't tell if I'm misusing collections here, or if there is a bug. > Anyway, what I'm trying to do is keep track of a group of rectangles > generated from a bar plot. Instead of letting there be a large number of > artists added to the axes, I wanted to just group them into a collection > and add the collection instead. As in the code below: > > #!/usr/bin/env python > import numpy > import matplotlib.pyplot as plt > import matplotlib.collections > > # just generate some data to plot > x = numpy.linspace(0.0,2.0*numpy.pi,10) > y = numpy.sin(x) > > # plot > axes = plt.gca() > bars = plt.bar(x,y,color='red',width=0.1) > > # strip out all of the newly inserted rectangles > for b in bars: b.remove() > > # and create a collection for plotting the rectangles instead. > coll = matplotlib.collections.PatchCollection(bars) > > axes.artists.append(coll) > > plt.xlim(0.0,2.0*numpy.pi) > plt.grid(True) > plt.show() > > This appears to work at first blush, but if you resize the plot, you can > tell that the rectangles are just fixed in their location now. I tried > messing around with setting the transform for the new collection object > "coll" in different ways, to no avail. Any suggestions welcome ;) > > -- > Daniel Hyams > dh...@gm... > > try transOffset: >>> coll = matplotlib.collections.PatchCollection(bars, transOffset=axes.transData) I've always found this a bit clumsy, but I think it's the standard way to do it. -Tony
I can't tell if I'm misusing collections here, or if there is a bug. Anyway, what I'm trying to do is keep track of a group of rectangles generated from a bar plot. Instead of letting there be a large number of artists added to the axes, I wanted to just group them into a collection and add the collection instead. As in the code below: #!/usr/bin/env python import numpy import matplotlib.pyplot as plt import matplotlib.collections # just generate some data to plot x = numpy.linspace(0.0,2.0*numpy.pi,10) y = numpy.sin(x) # plot axes = plt.gca() bars = plt.bar(x,y,color='red',width=0.1) # strip out all of the newly inserted rectangles for b in bars: b.remove() # and create a collection for plotting the rectangles instead. coll = matplotlib.collections.PatchCollection(bars) axes.artists.append(coll) plt.xlim(0.0,2.0*numpy.pi) plt.grid(True) plt.show() This appears to work at first blush, but if you resize the plot, you can tell that the rectangles are just fixed in their location now. I tried messing around with setting the transform for the new collection object "coll" in different ways, to no avail. Any suggestions welcome ;) -- Daniel Hyams dh...@gm...
On Friday, December 9, 2011, Laat de, Jos (KNMI) <jos...@kn...> wrote: > I am working with (geostationary) satellite data, and one of the things I want to do is plot a map (coastlines) on top of the satellite image. As an IDL user I know how to do this in IDL (although in IDL it is a bit of a hassle), but I don’t seem to be able to figure out how this could be done in python. > > > > The satellite data consists of a rectangular field of N by N pixels. The data is already converted to bitmap RGB values. I have figured out how this can be written to a bitmap image like PNG or JPG. > > > > I further figured out how to do the satellite projection in Basemap, and how to plot Basemap coastlines. However, the Basemap appears to have a non-transparent background, which overplots all bitmap data if I plot the Bitmap data first. I had hoped that there would be some transparency setting in Basemap, but alas. > > > > (ps. Keep in mind that I do not want to use some contour filling routine for plotting the satellite data. I want to retain the original N x N pixels and image size) What commands are you using to plot the data? drawcoastlines() should only draw lines. Maybe "hold" is being set to false in your matplotlibrc file or in your code? Ben Root
I am working with (geostationary) satellite data, and one of the things I want to do is plot a map (coastlines) on top of the satellite image. As an IDL user I know how to do this in IDL (although in IDL it is a bit of a hassle), but I don't seem to be able to figure out how this could be done in python. The satellite data consists of a rectangular field of N by N pixels. The data is already converted to bitmap RGB values. I have figured out how this can be written to a bitmap image like PNG or JPG. I further figured out how to do the satellite projection in Basemap, and how to plot Basemap coastlines. However, the Basemap appears to have a non-transparent background, which overplots all bitmap data if I plot the Bitmap data first. I had hoped that there would be some transparency setting in Basemap, but alas. (ps. Keep in mind that I do not want to use some contour filling routine for plotting the satellite data. I want to retain the original N x N pixels and image size)