You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(33) |
Dec
(20) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(7) |
Feb
(44) |
Mar
(51) |
Apr
(43) |
May
(43) |
Jun
(36) |
Jul
(61) |
Aug
(44) |
Sep
(25) |
Oct
(82) |
Nov
(97) |
Dec
(47) |
2005 |
Jan
(77) |
Feb
(143) |
Mar
(42) |
Apr
(31) |
May
(93) |
Jun
(93) |
Jul
(35) |
Aug
(78) |
Sep
(56) |
Oct
(44) |
Nov
(72) |
Dec
(75) |
2006 |
Jan
(116) |
Feb
(99) |
Mar
(181) |
Apr
(171) |
May
(112) |
Jun
(86) |
Jul
(91) |
Aug
(111) |
Sep
(77) |
Oct
(72) |
Nov
(57) |
Dec
(51) |
2007 |
Jan
(64) |
Feb
(116) |
Mar
(70) |
Apr
(74) |
May
(53) |
Jun
(40) |
Jul
(519) |
Aug
(151) |
Sep
(132) |
Oct
(74) |
Nov
(282) |
Dec
(190) |
2008 |
Jan
(141) |
Feb
(67) |
Mar
(69) |
Apr
(96) |
May
(227) |
Jun
(404) |
Jul
(399) |
Aug
(96) |
Sep
(120) |
Oct
(205) |
Nov
(126) |
Dec
(261) |
2009 |
Jan
(136) |
Feb
(136) |
Mar
(119) |
Apr
(124) |
May
(155) |
Jun
(98) |
Jul
(136) |
Aug
(292) |
Sep
(174) |
Oct
(126) |
Nov
(126) |
Dec
(79) |
2010 |
Jan
(109) |
Feb
(83) |
Mar
(139) |
Apr
(91) |
May
(79) |
Jun
(164) |
Jul
(184) |
Aug
(146) |
Sep
(163) |
Oct
(128) |
Nov
(70) |
Dec
(73) |
2011 |
Jan
(235) |
Feb
(165) |
Mar
(147) |
Apr
(86) |
May
(74) |
Jun
(118) |
Jul
(65) |
Aug
(75) |
Sep
(162) |
Oct
(94) |
Nov
(48) |
Dec
(44) |
2012 |
Jan
(49) |
Feb
(40) |
Mar
(88) |
Apr
(35) |
May
(52) |
Jun
(69) |
Jul
(90) |
Aug
(123) |
Sep
(112) |
Oct
(120) |
Nov
(105) |
Dec
(116) |
2013 |
Jan
(76) |
Feb
(26) |
Mar
(78) |
Apr
(43) |
May
(61) |
Jun
(53) |
Jul
(147) |
Aug
(85) |
Sep
(83) |
Oct
(122) |
Nov
(18) |
Dec
(27) |
2014 |
Jan
(58) |
Feb
(25) |
Mar
(49) |
Apr
(17) |
May
(29) |
Jun
(39) |
Jul
(53) |
Aug
(52) |
Sep
(35) |
Oct
(47) |
Nov
(110) |
Dec
(27) |
2015 |
Jan
(50) |
Feb
(93) |
Mar
(96) |
Apr
(30) |
May
(55) |
Jun
(83) |
Jul
(44) |
Aug
(8) |
Sep
(5) |
Oct
|
Nov
(1) |
Dec
(1) |
2016 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
(3) |
Sep
(1) |
Oct
(3) |
Nov
|
Dec
|
2017 |
Jan
|
Feb
(5) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
|
Sep
(7) |
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
1
|
2
|
3
|
4
|
5
(4) |
6
(4) |
7
(11) |
8
(2) |
9
(3) |
10
(10) |
11
(1) |
12
(21) |
13
(8) |
14
(13) |
15
(6) |
16
(1) |
17
(3) |
18
(1) |
19
|
20
|
21
(2) |
22
(8) |
23
(5) |
24
(6) |
25
|
26
(3) |
27
(1) |
28
(3) |
|
|
|
Hi John, thanks *very much* for your message. This is exactly what I want. And it is going to be a lot less work than it was in C / Xlib. Even re-reading that code was a nightmare, adding new features would be nearly impossible :-) I will now start redoing all my code using matplotlib. cheers Antonio Antonio Kanaan Departamento de Fisica - Universidade Federal de Santa Catarina CP 476 -- CEP 88040-900 -- Florianopolis -- SC -- Brasil http://www.astro.ufsc.br/~kanaan e-mail: ka...@as... Phone: 55,48,33319069 FAX : 55,48,33319946 On 2/26/07, John Hunter <jd...@gm...> wrote: > On 2/26/07, Antonio Kanaan <ank...@gm...> wrote: > > Hi folks, > > > > I am planning to re-write a data viewer program I wrote ages ago using C + Xlib. > > > > This program allows me to plot on the same window several graphs (time > > versus brightness - I work on variable stars). They all share the > > same independent variable (time passes the same for everybody). > > > > I can scroll and zoom the graphs both in X and Y. When I scroll/zoom > > in X all plots suffer the same action. Y scrolling/zooming may be > > done for each plot. > > > > Now the question: I need a data cursor, by that I mean some marker > > that sits on top of a point and which may be moved forward/backward by > > pressing a key. Matplotlib has a mouse cursor that gives me the > > cursor coordinates, but it doesn't > > This isn't too bad actually -- you can subclass the existing Cursor > class to override the xdata and ydata atrributes to insure that the > cursor sits only on your data points. The example below uses the > cursor class to overrride the toolbar formatting, and shows you how to > toggle the visibility of multiple cursors in multiple axes with shared > x axes. I'll also attach it in case the mail system mangles the > newlines. Take a look at the MultiCursor in > the widgets module, you might be able to do a similar trick there to > have common x cursoring across multiple axes. > > from pylab import figure, show, nx > from matplotlib.widgets import Cursor > > class DataCursor(Cursor): > def __init__(self, t, y, ax, useblit=True, **lineprops): > Cursor.__init__(self, ax, useblit=True, **lineprops) > self.y = y > self.t = t > self.xstr = '' > self.ystr = '' > > def onmove(self, event): > """ > we override event.xdata to force it to snap-to nearest data > item here we assume t is sorted and I'll use searchsorted > since it is a little faster, but you can plug in your nearest > neighbor routine, eg to grab the closest x,y point to the > cursor > """ > xdata = event.xdata > ind = nx.searchsorted(self.t, xdata) > ind = min(len(self.t)-1, ind) > event.xdata = self.t[ind] > event.ydata = self.y[ind] > self.xstr = '%1.3f'%event.xdata > self.ystr = '%1.3f'%event.ydata > Cursor.onmove(self, event) > > def fmtx(self, x): > return self.xstr > > def fmty(self, y): > return self.ystr > > fig = figure() > ax1 = fig.add_subplot(211) > ax2 = fig.add_subplot(212, sharex=ax1) # connect x pan/zoom events > > t = nx.cumsum(nx.rand(20)) > s1 = nx.mlab.rand(len(t)) > s2 = nx.mlab.rand(len(t)) > > ax1.plot(t, s1, 'go') > ax2.plot(t, s2, 'bs') > ax1.set_title("Press 1 for upper cursor and 2 for lower cursor") > cursor1 = DataCursor(t, s1, ax1, useblit=True, color='red', linewidth=2 ) > > # we'll let the cursor do the toolbarformatting too. > ax1.fmt_xdata = cursor1.fmtx > ax1.fmt_ydata = cursor1.fmty > > cursor2 = DataCursor(t, s2, ax2, useblit=True, color='red', linewidth=2 ) > ax2.fmt_xdata = cursor2.fmtx > ax2.fmt_ydata = cursor2.fmty > > > # now we'll control the visibility of the cursor; turn off cursor2 by default > cursor2.visible = False > > def keyevent(event): > cursor1.visible = event.key=='1' > cursor2.visible = event.key=='2' > fig.canvas.draw() > > fig.canvas.mpl_connect('key_press_event', keyevent) > show() > > > > > > - sit on top of my points and therefore doesn't give me the exact > > value of that point > > - allow me to move from one point to the next > > - allow me to change which graph I want the cursor sitting on > > > > I thought of drawing my own cursor, deleting it and moving to the next > > point . It seems this would take forever as (far as I understand) > > matplotlib will redo the entire plot each time I do this. > > > > How hard is it for the developers to include a built in data cursor in > > a similar fashion to the mouse cursor now available. I am affraid > > this isn't too easy, I don't know any plotting program that has one > > like what I need. > > > > thanks for your attention, > > > > Antonio Kanaan > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > opinions on IT & business topics through brief surveys-and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > Matplotlib-devel mailing list > > Mat...@li... > > https://lists.sourceforge.net/lists/listinfo/matplotlib-devel > > > >