You can subscribe to this list here.
2003 
_{Jan}
(1) 
_{Feb}
(2) 
_{Mar}
(6) 
_{Apr}
(11) 
_{May}

_{Jun}
(2) 
_{Jul}

_{Aug}
(1) 
_{Sep}
(15) 
_{Oct}
(12) 
_{Nov}
(11) 
_{Dec}
(18) 

2004 
_{Jan}
(57) 
_{Feb}
(16) 
_{Mar}
(3) 
_{Apr}
(14) 
_{May}
(35) 
_{Jun}
(41) 
_{Jul}
(19) 
_{Aug}
(25) 
_{Sep}
(14) 
_{Oct}
(36) 
_{Nov}
(41) 
_{Dec}
(29) 
2005 
_{Jan}
(44) 
_{Feb}
(21) 
_{Mar}
(17) 
_{Apr}
(45) 
_{May}
(23) 
_{Jun}
(26) 
_{Jul}
(30) 
_{Aug}
(9) 
_{Sep}
(120) 
_{Oct}
(34) 
_{Nov}
(17) 
_{Dec}
(6) 
2006 
_{Jan}
(23) 
_{Feb}
(56) 
_{Mar}
(78) 
_{Apr}
(14) 
_{May}
(87) 
_{Jun}
(52) 
_{Jul}
(69) 
_{Aug}
(41) 
_{Sep}
(53) 
_{Oct}
(37) 
_{Nov}
(8) 
_{Dec}
(17) 
2007 
_{Jan}
(32) 
_{Feb}
(3) 
_{Mar}
(21) 
_{Apr}
(29) 
_{May}
(14) 
_{Jun}
(9) 
_{Jul}
(30) 
_{Aug}
(26) 
_{Sep}
(6) 
_{Oct}
(9) 
_{Nov}
(7) 
_{Dec}
(6) 
2008 
_{Jan}
(9) 
_{Feb}
(19) 
_{Mar}
(46) 
_{Apr}
(44) 
_{May}
(28) 
_{Jun}
(32) 
_{Jul}
(37) 
_{Aug}
(14) 
_{Sep}
(7) 
_{Oct}
(3) 
_{Nov}
(15) 
_{Dec}
(3) 
2009 
_{Jan}

_{Feb}
(6) 
_{Mar}
(7) 
_{Apr}

_{May}
(20) 
_{Jun}
(8) 
_{Jul}
(5) 
_{Aug}
(6) 
_{Sep}

_{Oct}
(45) 
_{Nov}
(8) 
_{Dec}
(20) 
2010 
_{Jan}
(3) 
_{Feb}
(1) 
_{Mar}
(12) 
_{Apr}

_{May}
(3) 
_{Jun}
(12) 
_{Jul}
(1) 
_{Aug}
(2) 
_{Sep}
(3) 
_{Oct}
(11) 
_{Nov}
(5) 
_{Dec}
(6) 
2011 
_{Jan}
(4) 
_{Feb}

_{Mar}

_{Apr}
(13) 
_{May}
(9) 
_{Jun}
(12) 
_{Jul}
(12) 
_{Aug}
(2) 
_{Sep}
(11) 
_{Oct}
(8) 
_{Nov}
(2) 
_{Dec}
(16) 
2012 
_{Jan}
(23) 
_{Feb}

_{Mar}

_{Apr}
(2) 
_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}
(6) 
_{Oct}
(7) 
_{Nov}

_{Dec}
(3) 
2013 
_{Jan}
(1) 
_{Feb}

_{Mar}

_{Apr}
(2) 
_{May}
(7) 
_{Jun}
(6) 
_{Jul}
(2) 
_{Aug}
(12) 
_{Sep}

_{Oct}
(3) 
_{Nov}

_{Dec}
(3) 
2014 
_{Jan}

_{Feb}

_{Mar}

_{Apr}
(2) 
_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}

_{Nov}
(3) 
_{Dec}

2015 
_{Jan}

_{Feb}
(5) 
_{Mar}

_{Apr}

_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}

_{Nov}

_{Dec}

S  M  T  W  T  F  S 






1

2

3

4
(1) 
5

6

7

8

9

10
(1) 
11
(3) 
12
(2) 
13

14

15

16

17

18

19

20

21

22
(1) 
23

24

25
(5) 
26

27
(1) 
28

29

30

31







From: Mico Filós <elmico.filos@gm...>  20080827 10:00:15

Hi, I have a very minor suggestion regarding the web page. Instead of listing the two available formats for the manual as " * reference manual (PDF version) * online reference manual (HTML version)" I would suggest to say something like: " reference manual: * pdf * html (online) " or, better, " reference manual [pdf] " (with a link in 'reference manual' to the html copy, and a link in 'pdf' to the pdf copy). As it is right now, it takes some extra milliseconds to process that the two entries point to exactly to the same information (yet in different formats). It is a nuance, I know, but I feel it will improve the readability :) Sorry for the annoyance. Mico 
From: Ken Starks <ken@la...>  20080825 18:28:35

Stefan Schenk wrote: > Hi Mico, > > Am Freitag 22 August 2008 20:36 schrieb Mico Filós: > [...] > >> Describing this in words is painful. I hope you see what I mean. >> > > I think i now understand the pain;) You want to achieve something like the > following? > > # > > from pyx import * > > g = graph.graphxy(width=8) > f = g.plot(graph.data.function("y(x)=sin(x)/x", min=10, max=10)) > > g.doplot(f) > > # The point that defines the tangent > l = 0.51*f.path.arclen() > x0, y0 = f.path.at(l) > > tangent = f.path.tangent(l, length=4) > g.stroke(tangent) > > # Path that is perpendicular to tangent > projector = tangent.transformed(trafo.rotate(90, x0, y0)) > > # Some other arbitrary point > l2 = 0.7*f.path.arclen() > x1, y1 = f.path.at(l2) > > # Find the intersection of a line from x1, y1 perpendicular to tangent with > # tangent > a, b = projector.transformed(trafo.translate(x1x0, > y1y0)).intersect(tangent) > u, v = tangent.at(b[0]) > > g.stroke(path.line(x1, y1, u, v)) > > > g.writeEPSfile("project_function_to_tangent") > > # > > > However there is still the problem that the points (x0, y0) and (x1, y1) > are determined by some length of the path. > > Does anyone know a way in pyx to translate some graphcoordinate x into a > pathlength? > > If not, you probably have to do tangent by hand and (x1, y1) will be > something like > x1, y1 = g.pos(x, y(x)) > >  > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblincontest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > PyXuser mailing list > PyXuser@... > https://lists.sourceforge.net/lists/listinfo/pyxuser > > > There is a genuine problem here that would be useful to solve, in the context of involutes and evolutes, of constucting a curve as an envelope, and similar tasks. It is a task that should almost certainly be solved for parametric paths rather than graphs of functions, although they would be a special case. Another special case, that of applying unequal axisscaling, possibly not even linear, as here, is possible I suppose, but is quite likely to be silly. If you distort your geometry in this way, you should surely distort your ruler/tapemeasure and protractor to match. The idea of starting with such a pathological example as ("y(x)=sin(x)/x", min=10, max=10) is either tongueincheek, or a troll.  So let us start with the simpler (but not insubstantial) task: Same problem, but restricted to paths that consist of a single, nonselfintersecting cubic Bezier. Can this be solved analytically, and if not what is the most stable, accurate, and/or quickest numerical method that Python can provide ? I can't imagine that recursive chopping in half, followed by Pythagoras' theorem on all the bits is likely to be it. Cheers, Ken. 
From: Ken Starks <ken@la...>  20080825 18:27:06

Reply sent privately (in error) on 24 August Mico Filós wrote: > Hi, > > I am sorry if this is a trivial question but I cannot figure out how > to do this. > > Imagine I have a nonlinear function f(x) and its linearization at some > point (x0,f(x0)), > given by y(x) = f'(x0) (x  x0) + y0, where y0 = f(x0). Imagine also that > I don't use the same scale for the x and y axes. How can I obtain a > straight line that > *looks* perpendicular to the tangent y(x)? > > Since the x and y scales are not the same, a line with slope equal to > 1/f'(x0) > does not look perpendicular to y(x). I want to plot a straight line > that passes through > an arbitrary point of the tangent (not necessarily (x0,y0)) and that > looks perpendicular to > it. My idea is actually to plot the projection of an arbitrary point > of the nonlinear function, > (x1,f(x1)) to the subspace spanned by the tangent at x0. For me the > most straightforward thing to do would be: > > * Compute the angle theta (on the actual canvas, i.e., as it looks > on the screen) of the path > defined by the tangent function y(x) > > * Plot a line path L with an angle theta + pi/2 that passes through > some particular point > of the tangent Q=(x0', y0'), which I specify. > > * Find the intersection R of the line L with the path defined by > the nonlinear function. > > * Ideally, I would stroke only the portion of L that connects the > point > (x0',y0') with the intersection point R. > > Describing this in words is painful. I hope you see what I mean. > > Thanks a lot in for your patience. > > Mico > >  > This SF.Net email is sponsored by the Moblin Your Move Developer's > challenge > Build the coolest Linux based applications with Moblin SDK & win great > prizes > Grand prize is a trip for two to an Open Source event anywhere in the > world > http://moblincontest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > PyXuser mailing list > PyXuser@... > https://lists.sourceforge.net/lists/listinfo/pyxuser > > >  from pyx import * g = graph.graphxy(width=8, x=graph.axis.linear(min=5, max=5)) g.plot(graph.data.function("y(x)=x*x")) # Let us plot the tangent at (x0,y0) = (2,4) slope 4 g.plot(graph.data.function("y(x)=4*(x1)")) """ Let us take two more points on the tangent """ slope=4 deltaX=2 x1=3 # example, you can change this x2 = x1 + deltaX y1 = slope * (x1 1) y2 = slope * (x2  1) """ Now you need to get the two points (x1,y1), (x2,y2) into canvascoordinates rather than scaled coordinates. This is the crucial stage that will provide for your peculiar request that the line *looks* perpendicular to the tangent line. I shall call these UV coordinates, and their origin is bottom left of the canvas (g), their units the usual userunits (e.g cm) """ u1,v1= g.pos(x1,y1) u2,v2= g.pos(x2,y2) deltaU=u2u1 deltaV=v2v1 # lastly a point (u3,v3) that can define your 'normal' from (u1,v1) u3=u1deltaV v3=v1+deltaU # as these are in canvas coordinates, not graph ones, we use # stroke .. path .. etc to plot a segment from u1,v1 to u3,v3 g.stroke(path.path(path.moveto(u1,v1),path.lineto(u3,v3))) g.writePDFfile("graph3") 
From: Ken Starks <ken@la...>  20080825 18:23:42

I am about to resend a couple of messages which I have just realised went only to an individual rather than to the mailinglist as a whole. It seems that this mailing list is set up so that the main 'To:' recipient when you press 'Reply' is the individual, and the list itself is 'Cc:', for which in my system you have to press 'Reply all'. Sorry about not noticing earlier. Ken. 
From: André Wobst <wobsta@us...>  20080825 17:36:12

Hi Stefan, Am 25.08.2008 um 10:57 schrieb Stefan Schenk: > Does anyone know a way in pyx to translate some graphcoordinate x > into a > pathlength? Didn't you pointed out that using path "arithmetics" would be a perfect solution to the problem. Well, here too! Just use a grid path from the axis: l = f.path.intersect(g.xgridpath(0.2))[0][0] Note that l will be a normpathparam instead of a simple length, but this is a feature ... and you can do funny things with those parameters (like adding an arc length to such a parameter). André  by _ _ _ Dr. André Wobst, Amselweg 22, 85716 Unterschleißheim / \ \ / ) wobsta@..., http://www.wobsta.de/ / _ \ \/\/ / PyX  High quality PostScript and PDF figures (_/ \_)_/\_/ with Python & TeX: visit http://pyx.sourceforge.net/ 
From: Stefan Schenk <Stefan.S<chenk@ph...>  20080825 08:58:07

Hi Mico, Am Freitag 22 August 2008 20:36 schrieb Mico Filós: [...] > Describing this in words is painful. I hope you see what I mean. I think i now understand the pain;) You want to achieve something like the following? # from pyx import * g = graph.graphxy(width=8) f = g.plot(graph.data.function("y(x)=sin(x)/x", min=10, max=10)) g.doplot(f) # The point that defines the tangent l = 0.51*f.path.arclen() x0, y0 = f.path.at(l) tangent = f.path.tangent(l, length=4) g.stroke(tangent) # Path that is perpendicular to tangent projector = tangent.transformed(trafo.rotate(90, x0, y0)) # Some other arbitrary point l2 = 0.7*f.path.arclen() x1, y1 = f.path.at(l2) # Find the intersection of a line from x1, y1 perpendicular to tangent with # tangent a, b = projector.transformed(trafo.translate(x1x0, y1y0)).intersect(tangent) u, v = tangent.at(b[0]) g.stroke(path.line(x1, y1, u, v)) g.writeEPSfile("project_function_to_tangent") # However there is still the problem that the points (x0, y0) and (x1, y1) are determined by some length of the path. Does anyone know a way in pyx to translate some graphcoordinate x into a pathlength? If not, you probably have to do tangent by hand and (x1, y1) will be something like x1, y1 = g.pos(x, y(x)) 
From: Mico Filós <elmico.filos@gm...>  20080822 18:36:49

Hi, I am sorry if this is a trivial question but I cannot figure out how to do this. Imagine I have a nonlinear function f(x) and its linearization at some point (x0,f(x0)), given by y(x) = f'(x0) (x  x0) + y0, where y0 = f(x0). Imagine also that I don't use the same scale for the x and y axes. How can I obtain a straight line that *looks* perpendicular to the tangent y(x)? Since the x and y scales are not the same, a line with slope equal to 1/f'(x0) does not look perpendicular to y(x). I want to plot a straight line that passes through an arbitrary point of the tangent (not necessarily (x0,y0)) and that looks perpendicular to it. My idea is actually to plot the projection of an arbitrary point of the nonlinear function, (x1,f(x1)) to the subspace spanned by the tangent at x0. For me the most straightforward thing to do would be: * Compute the angle theta (on the actual canvas, i.e., as it looks on the screen) of the path defined by the tangent function y(x) * Plot a line path L with an angle theta + pi/2 that passes through some particular point of the tangent Q=(x0', y0'), which I specify. * Find the intersection R of the line L with the path defined by the nonlinear function. * Ideally, I would stroke only the portion of L that connects the point (x0',y0') with the intersection point R. Describing this in words is painful. I hope you see what I mean. Thanks a lot in for your patience. Mico 
From: Ken Starks <ken@la...>  20080812 10:51:08

Ken Starks wrote: > I've only just subscribed to this mailing list, so I expect this thread > is dead. > > Dan Reinholz <xaenn@...>  20080717 18:07 wrote: > > > As long as I'm on the subject, could anybody help me > > actually figure out how to shade the regions required > > for Simpson's rule? In each region I will want to > > connect three straight lines, with a parabola on top, > > and then fill the total area with a solid color. > > > Hi Dan, > > An ordinary cubic Bezier includes parabolas as a special case. > Unlike f(x) = quadratic, their axis need not be vertical. > > You don't need four points, you just need three. it doesn't much > matter but you may as well merge the two control points. > > Instead of using Bezier segment A .. B .. C .. D > > Use A .. P .. P .. D > > To get your parabola through A and B, set point P to > the point where the tangents at A and B intersect. > > I meant : "To get your parabola through A and D, set point P ... " > (For the special case where the 'parabola' is actually a straight line, > just use the midpoint instead, but anywhere on segment AD will do) > > When a straight segment AD is replaced by a cubic Bezier, most software actually chooses A .. B .. C .. D where B and C are onethird and twothirds of the way along AD. >  > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblincontest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > PyXuser mailing list > PyXuser@... > https://lists.sourceforge.net/lists/listinfo/pyxuser > > > 
From: Ken Starks <ken@la...>  20080812 10:19:15

I've only just subscribed to this mailing list, so I expect this thread is dead. Dan Reinholz <xaenn@...>  20080717 18:07 wrote: > As long as I'm on the subject, could anybody help me > actually figure out how to shade the regions required > for Simpson's rule? In each region I will want to > connect three straight lines, with a parabola on top, > and then fill the total area with a solid color. Hi Dan, An ordinary cubic Bezier includes parabolas as a special case. Unlike f(x) = quadratic, their axis need not be vertical. You don't need four points, you just need three. it doesn't much matter but you may as well merge the two control points. Instead of using Bezier segment A .. B .. C .. D Use A .. P .. P .. D To get your parabola through A and B, set point P to the point where the tangents at A and B intersect. (For the special case where the 'parabola' is actually a straight line, just use the midpoint instead, but anywhere on segment AD will do) 
From: Alan G Isaac <aisaac@am...>  20080811 19:28:46

Thanks Mico. I see some of the plusses. And movie creation looks trivial! Alan I have definitely found it useful to create a module containing my favorite PyX styles. 
From: Alan G Isaac <aisaac@am...>  20080811 17:09:30

Mico Filós wrote: > (for those familiar with asymptote, I want to reproduce > the effect of MidArrow. See, e.g., > http://piprim.tuxfamily.org/asymptote/generale/index.html#fig0031) > I wonder how to do that in PyX in a simple way. I'd be interested in hearing your personal comparison of Asymptote and PyX for tasks that differentiate them. (I use and love PyX but have not experimented with Asymptote.) Cheers, Alan Isaac 
From: Benedikt Koenig <lists@be...>  20080811 06:52:26

Hi Mico, why not just use the deco.arrow style and add the pos=0.5 option? If you take the example from http://pyx.sourceforge.net/examples/drawing/arrow.html which reads c.stroke(path.curve(0, 0, 0, 4, 2, 4, 3, 3), [style.linewidth.THICK, style.linestyle.dashed, color.rgb.blue, deco.earrow([deco.stroked([color.rgb.red, style.linejoin.round]), deco.filled([color.rgb.green])], size=1)]) then just replace the deco.earrow with deco.arrow and add the pos=0.5 option to the list of options c.stroke(path.curve(1, 0, 1, 4, 3, 4, 4, 3), [style.linewidth.THICK, style.linestyle.dashed, color.rgb.blue, deco.arrow([deco.stroked([color.rgb.red, style.linejoin.round]), deco.filled([color.rgb.green])], size=1, pos=0.5)]) HTW, bene Am Sonntag, den 10.08.2008, 18:47 +0200 schrieb Mico Filós: > Hi, > > I have a data file with the coordinates (x,y) of a trajectory, which I > would like to plot in the plane (x,y) (the phase plane). > To make clear that the path is a trajectory, I want to stroke an > arrowead at approximately half the arclength of the path > (for those familiar with asymptote, I want to reproduce the effect of > MidArrow. See, e.g., > http://piprim.tuxfamily.org/asymptote/generale/index.html#fig0031) > I wonder how to do that in PyX in a simple way. > > Thanks for your help! > >  > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblincontest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > PyXuser mailing list > PyXuser@... > https://lists.sourceforge.net/lists/listinfo/pyxuser > 
From: Mico Filós <elmico.filos@gm...>  20080810 16:47:31

Hi, I have a data file with the coordinates (x,y) of a trajectory, which I would like to plot in the plane (x,y) (the phase plane). To make clear that the path is a trajectory, I want to stroke an arrowead at approximately half the arclength of the path (for those familiar with asymptote, I want to reproduce the effect of MidArrow. See, e.g., http://piprim.tuxfamily.org/asymptote/generale/index.html#fig0031) I wonder how to do that in PyX in a simple way. Thanks for your help! 
From: Alan G Isaac <aisaac@am...>  20080804 16:47:38

On Mon, 21 Jul 2008, Joerg Lehmann apparently wrote: > It would be nice to have it somewhere. Here it is: http://www.american.edu/econ/notes/pyx_shadedintegral.py Primary remaining question: how do we know the "direction" of an xgridpath? Thanks, Alan 