Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

## Re: [Matplotlib-users] Comet

 Re: [Matplotlib-users] Comet From: David Arnold - 2010-02-06 18:21:22 ```Hi Eric, Matlab has two commands, comet and comet3, that animate the path. They are used as in the following Matlab code: t=linspace(0,2*pi,2000); x=-sin(t); y=cos(t); comet(x,y) What then happens is the path is drawn "live", as in my python code below. This is especially useful when teaching parametric equations in calculus. A typical question in that section might be: "find a parametrization for the unit circle that starts at (0,1) and moves around the circle one time in the counterclockwise direction." In this situation, the following is not helpful: t=linspace(0,2*pi,2000); x=-sin(t); y=cos(t); plot(x,y) Because the student just sees sees the "finished" path. The comet command, on the other hand, allows the student to "see" that path as it is traced out in real time. David. On Feb 6, 2010, at 9:09 AM, Eric Firing wrote: > David Arnold wrote: >> All, >> I am still wondering why there is no comet command in matplotlib. I was successful with the following: >> import matplotlib.pyplot as plt >> import numpy as np >> len=200 >> t=np.linspace(0,2*np.pi,len) >> x=np.cos(t) >> y=np.sin(t) >> xd=[x[0]] >> yd=[y[0]] >> l,=plt.plot(xd,yd) >> plt.axis([-1,1,-1,1]) >> for i in np.arange(1,len): >> xd.append(x[i]) >> yd.append(y[i]) >> l.set_xdata(xd) >> l.set_ydata(yd) >> plt.draw() >> >> plt.show() >> But it seems that a comet function added to the matplotlib library would greatly simplify things for students using the interactive pylab in ipython. > > I don't understand--what's the point of the example? What is "comet", and how does it simplify anything? > > Eric > ```

 [Matplotlib-users] Comet From: David Arnold - 2008-08-15 06:59:11 ```All, Does anyone have any code emulating Matlab's comet command? D. ```
 [Matplotlib-users] Comet From: David Arnold - 2009-12-07 16:00:40 ```All, Is there anything resembling Matlab's comet command? D. ```
 [Matplotlib-users] Comet From: David Arnold - 2010-02-06 07:11:31 ```All, I am still wondering why there is no comet command in matplotlib. I was successful with the following: import matplotlib.pyplot as plt import numpy as np len=200 t=np.linspace(0,2*np.pi,len) x=np.cos(t) y=np.sin(t) xd=[x[0]] yd=[y[0]] l,=plt.plot(xd,yd) plt.axis([-1,1,-1,1]) for i in np.arange(1,len): xd.append(x[i]) yd.append(y[i]) l.set_xdata(xd) l.set_ydata(yd) plt.draw() plt.show() But it seems that a comet function added to the matplotlib library would greatly simplify things for students using the interactive pylab in ipython. Any plans? David ```
 Re: [Matplotlib-users] Comet From: Eric Firing - 2010-02-06 17:09:53 ```David Arnold wrote: > All, > > I am still wondering why there is no comet command in matplotlib. > > I was successful with the following: > > import matplotlib.pyplot as plt > import numpy as np > > len=200 > t=np.linspace(0,2*np.pi,len) > x=np.cos(t) > y=np.sin(t) > xd=[x[0]] > yd=[y[0]] > l,=plt.plot(xd,yd) > plt.axis([-1,1,-1,1]) > > for i in np.arange(1,len): > xd.append(x[i]) > yd.append(y[i]) > l.set_xdata(xd) > l.set_ydata(yd) > plt.draw() > > plt.show() > > > But it seems that a comet function added to the matplotlib library would greatly simplify things for students using the interactive pylab in ipython. > I don't understand--what's the point of the example? What is "comet", and how does it simplify anything? Eric ```
 Re: [Matplotlib-users] Comet From: David Arnold - 2010-02-06 18:21:22 ```Hi Eric, Matlab has two commands, comet and comet3, that animate the path. They are used as in the following Matlab code: t=linspace(0,2*pi,2000); x=-sin(t); y=cos(t); comet(x,y) What then happens is the path is drawn "live", as in my python code below. This is especially useful when teaching parametric equations in calculus. A typical question in that section might be: "find a parametrization for the unit circle that starts at (0,1) and moves around the circle one time in the counterclockwise direction." In this situation, the following is not helpful: t=linspace(0,2*pi,2000); x=-sin(t); y=cos(t); plot(x,y) Because the student just sees sees the "finished" path. The comet command, on the other hand, allows the student to "see" that path as it is traced out in real time. David. On Feb 6, 2010, at 9:09 AM, Eric Firing wrote: > David Arnold wrote: >> All, >> I am still wondering why there is no comet command in matplotlib. I was successful with the following: >> import matplotlib.pyplot as plt >> import numpy as np >> len=200 >> t=np.linspace(0,2*np.pi,len) >> x=np.cos(t) >> y=np.sin(t) >> xd=[x[0]] >> yd=[y[0]] >> l,=plt.plot(xd,yd) >> plt.axis([-1,1,-1,1]) >> for i in np.arange(1,len): >> xd.append(x[i]) >> yd.append(y[i]) >> l.set_xdata(xd) >> l.set_ydata(yd) >> plt.draw() >> >> plt.show() >> But it seems that a comet function added to the matplotlib library would greatly simplify things for students using the interactive pylab in ipython. > > I don't understand--what's the point of the example? What is "comet", and how does it simplify anything? > > Eric > ```
 Re: [Matplotlib-users] Comet From: Goyo - 2010-02-06 21:38:33 ```Hi David, El sáb, 06-02-2010 a las 10:21 -0800, David Arnold escribió: > Hi Eric, > > Matlab has two commands, comet and comet3, that animate the path. They are used as in the following Matlab code: > > t=linspace(0,2*pi,2000); > x=-sin(t); > y=cos(t); > comet(x,y) You can just write the function: import matplotlib.pyplot as plt def comet(x, y, fmt='', step=1, **kwargs): l, = plt.plot(x, y, fmt, **kwargs) num_points = len(x) for i in xrange(1, num_points + 1, step): l.set_data(x[:i], y[:i]) plt.draw() l.set_data(x, y) plt.draw() I think this could be better done using animation features of matplotlib, but I never used them and I think they varies across toolkits. Search the docs for animation examples anyway. Goyo > > What then happens is the path is drawn "live", as in my python code below. > > This is especially useful when teaching parametric equations in calculus. A typical question in that section might be: "find a parametrization for the unit circle that starts at (0,1) and moves around the circle one time in the counterclockwise direction." In this situation, the following is not helpful: > > t=linspace(0,2*pi,2000); > x=-sin(t); > y=cos(t); > plot(x,y) > > Because the student just sees sees the "finished" path. The comet command, on the other hand, allows the student to "see" that path as it is traced out in real time. > > David. > > On Feb 6, 2010, at 9:09 AM, Eric Firing wrote: > > > David Arnold wrote: > >> All, > >> I am still wondering why there is no comet command in matplotlib. I was successful with the following: > >> import matplotlib.pyplot as plt > >> import numpy as np > >> len=200 > >> t=np.linspace(0,2*np.pi,len) > >> x=np.cos(t) > >> y=np.sin(t) > >> xd=[x[0]] > >> yd=[y[0]] > >> l,=plt.plot(xd,yd) > >> plt.axis([-1,1,-1,1]) > >> for i in np.arange(1,len): > >> xd.append(x[i]) > >> yd.append(y[i]) > >> l.set_xdata(xd) > >> l.set_ydata(yd) > >> plt.draw() > >> > >> plt.show() > >> But it seems that a comet function added to the matplotlib library would greatly simplify things for students using the interactive pylab in ipython. > > > > I don't understand--what's the point of the example? What is "comet", and how does it simplify anything? > > > > Eric > > > > > ------------------------------------------------------------------------------ > The Planet: dedicated and managed hosting, cloud storage, colocation > Stay online with enterprise data centers and the best network in the business > Choose flexible plans and management services without long-term contracts > Personal 24x7 support from experience hosting pros just a phone call away. > http://p.sf.net/sfu/theplanet-com > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users ```
 Re: [Matplotlib-users] Comet From: David Arnold - 2010-02-06 22:46:42 ```Goyo, Sweet little function. Thanks. I still feel that a comet routine should be added to matplotlib for the reasons I've delineated. D. On Feb 6, 2010, at 1:38 PM, Goyo wrote: > Hi David, > > El sáb, 06-02-2010 a las 10:21 -0800, David Arnold escribió: >> Hi Eric, >> >> Matlab has two commands, comet and comet3, that animate the path. They are used as in the following Matlab code: >> >> t=linspace(0,2*pi,2000); >> x=-sin(t); >> y=cos(t); >> comet(x,y) > > You can just write the function: > > import matplotlib.pyplot as plt > > def comet(x, y, fmt='', step=1, **kwargs): > l, = plt.plot(x, y, fmt, **kwargs) > num_points = len(x) > for i in xrange(1, num_points + 1, step): > l.set_data(x[:i], y[:i]) > plt.draw() > l.set_data(x, y) > plt.draw() > > I think this could be better done using animation features of > matplotlib, but I never used them and I think they varies across > toolkits. Search the docs for animation examples anyway. > > Goyo > >> >> What then happens is the path is drawn "live", as in my python code below. >> >> This is especially useful when teaching parametric equations in calculus. A typical question in that section might be: "find a parametrization for the unit circle that starts at (0,1) and moves around the circle one time in the counterclockwise direction." In this situation, the following is not helpful: >> >> t=linspace(0,2*pi,2000); >> x=-sin(t); >> y=cos(t); >> plot(x,y) >> >> Because the student just sees sees the "finished" path. The comet command, on the other hand, allows the student to "see" that path as it is traced out in real time. >> >> David. >> >> On Feb 6, 2010, at 9:09 AM, Eric Firing wrote: >> >>> David Arnold wrote: >>>> All, >>>> I am still wondering why there is no comet command in matplotlib. I was successful with the following: >>>> import matplotlib.pyplot as plt >>>> import numpy as np >>>> len=200 >>>> t=np.linspace(0,2*np.pi,len) >>>> x=np.cos(t) >>>> y=np.sin(t) >>>> xd=[x[0]] >>>> yd=[y[0]] >>>> l,=plt.plot(xd,yd) >>>> plt.axis([-1,1,-1,1]) >>>> for i in np.arange(1,len): >>>> xd.append(x[i]) >>>> yd.append(y[i]) >>>> l.set_xdata(xd) >>>> l.set_ydata(yd) >>>> plt.draw() >>>> >>>> plt.show() >>>> But it seems that a comet function added to the matplotlib library would greatly simplify things for students using the interactive pylab in ipython. >>> >>> I don't understand--what's the point of the example? What is "comet", and how does it simplify anything? >>> >>> Eric >>> >> >> >> ------------------------------------------------------------------------------ >> The Planet: dedicated and managed hosting, cloud storage, colocation >> Stay online with enterprise data centers and the best network in the business >> Choose flexible plans and management services without long-term contracts >> Personal 24x7 support from experience hosting pros just a phone call away. >> http://p.sf.net/sfu/theplanet-com >> _______________________________________________ >> Matplotlib-users mailing list >> Matplotlib-users@... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > > ------------------------------------------------------------------------------ > The Planet: dedicated and managed hosting, cloud storage, colocation > Stay online with enterprise data centers and the best network in the business > Choose flexible plans and management services without long-term contracts > Personal 24x7 support from experience hosting pros just a phone call away. > http://p.sf.net/sfu/theplanet-com > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users ```