From: Fernando P. <fpe...@gm...> - 2007-07-27 01:05:43
|
[ That was meant for the list, sorry ] On 7/26/07, John Hunter <jd...@gm...> wrote: > I'm on the fence as to how to handle this case. The majority of our > users will think of $ as the US currency symbol, and will have never > heard of TeX. Option 1 is to educate them, and require them to \$ > quote that symbol. Option 2 is to enable a text property eg mathtext, > and do > > text(x, y, 'what is the $\sin(x)$', mathtext=True) > > Option 3 is to try and be clever, and interpret an even number of > unquoted dollar symbols as mathtext, or any string that has a quoted > dollar sign symbol as mathtext, else assume plain text. Option 4 is > to treat *all* strings as mathtext, but I think we would pay a pretty > big performance hit to invoke the mathtext machinery for every piece > of text. But it is an option. In option 4, of course, users would be > required to quote all dollar signs, so it is related to option 1 but > slightly different in how it treats strings with no dollar signs. > > I'm not too keen on the text(x, y, Math('string')) proposal, which is > a little outside the normal matplotlib approach. > > Michael, do you have a preference or an alternate proposal? I'm not Michael, but I s'pose I can still speak :) This sounds to me like a good case for Guido's mantra of NOT putting keywords in functions and instead just making two separate functions. Why not just text(x,y,"This year I lost a lot of $$$") mtext(x,y,r"This year I lost \$$\infty$") ? Explicit is better than implicit and all that... cheers, f |