MathGroup Archive 2003

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: format Text in graphics

  • To: mathgroup at smc.vnet.net
  • Subject: [mg42311] Re: [mg42299] Re: format Text in graphics
  • From: Murray Eisenberg <murray at math.umass.edu>
  • Date: Sat, 28 Jun 2003 03:21:56 -0400 (EDT)
  • Organization: Mathematics & Statistics, Univ. of Mass./Amherst
  • References: <200306250950.FAA04042@smc.vnet.net> <bdefg7$dko$1@smc.vnet.net> <200306271031.GAA24612@smc.vnet.net>
  • Reply-to: murray at math.umass.edu
  • Sender: owner-wri-mathgroup at wolfram.com

How can that solution be modified so as to allow defining some functions 
to effect the TraditionalForm[HoldForm[...]] construction?  For example, 
something like the following -- which is not robust:

   mathForm[expr_] := TraditionalForm[HoldForm[expr]];
   xyLabels[x_, y_] = {mathForm[x], mathForm[y]};
   fnLabel[{p_, q_}]  := Text[mathForm[y = f[x]], {p, q}];
   Plot[x^2, {x, -1, 1}, AxesLabel -> xyLabels[
     x, y], Epilog -> fnLabel[{0.65, 0.75}]];

The trouble is shown by preceding the above input by, say:

   x = 100; f[x_] := Sin[x]; y = "hello";

Then the axes labels are 100 and "hello", and the Text displayed with 
the plot is sin(x).

[Evidently Hold and its variants are one of the significant Mathematica 
frontiers that I still have to conquer!]


Paul Abbott wrote:
> In article <bdefg7$dko$1 at smc.vnet.net>,
>  Murray Eisenberg <murray at math.umass.edu> wrote:
> 
> 
>>Thanks to all who have replied so far -- and please keep the answers 
>>coming!  Perhaps we will at last see a truly simple, straigntforward, 
>>robust, and correct way to accomplish what seems such a basic task for 
>>annotating graphics!
>>
>>So far, the solution below -- with the proposer's subsequent (privately 
>>sent) amendment to wrap y and f[x] with HoldForm -- seems to be the only 
>>one that actually works in the sense I indicated.
>>
>>There still seems to be no general solution that would also properly 
>>format, in conventional form, other math expressions as Text in graphics 
>>output.
> 
> 
> Surely HoldForm does exactly what you want? Try
> 
>   Plot[Sin[x], {x, 0, 2Pi},
>      Epilog -> {Text[TraditionalForm[HoldForm[y = f[x]]], {Pi, 3/4}]}];
> 
> Cheers,
> Paul
> 
> 
>>Gianluca Gorni wrote:
>>
>>>Hello!
>>>
>>>I do it this way:
>>>
>>>Format[myEqual[x_, y_], TraditionalForm] :=
>>>  DisplayForm[RowBox[{x, "=", y}]];
>>>
>>>Plot[Sin[x], {x, 0, 2Pi},
>>>    Epilog -> {Text[TraditionalForm[myEqual[y, f[x]]], {Pi, 1/2}]}];
>>>
>>>Good luck,
>>>
>>>              Gianluca Gorni
>>>
>>>
>>>
>>>>From: Murray Eisenberg <murray at math.umass.edu>
To: mathgroup at smc.vnet.net
> 
> To: mathgroup at smc.vnet.net
> 
>>>To: mathgroup at smc.vnet.net
>>>
>>>
>>>>Organization: Mathematics & Statistics, Univ. of Mass./Amherst
>>>>Reply-To: murray at math.umass.edu
>>>>Date: Wed, 25 Jun 2003 01:53:47 -0400 (EDT)
>>>>To: mathgroup at smc.vnet.net
>>>>Subject: [mg42311] [mg42299]  format Text in graphics
>>>>
>>>>What value of Epilog in a Plot expression will properly format
>>>>
>>>>y = f(x)
>>>>
>>>>in conventional mathematical style?  That is, the y, f, and x should be
>>>>italicized but the = and parentheses should not.
>>>>
>>>>Some things that do NOT work:
>>>>
>>>>Epilog -> Text[TraditionalForm[y = f(x)], {0.5, 0.5}]
>>>>
>>>>(* that just sets y to be f(x) and then displays f(x) *)
>>>>
>>>>textForm[txt_] := StyleForm[txt, FontFamily -> Times]
>>>>mathForm[txt_] := StyleForm[txt, FontFamily -> Times, FontSlant -> Italic]
>>>>
>>>>Epilog -> Text[mathForm["y "], textForm["="], mathForm[" f(x)"], {0.5 0.5}]
>>>>
>>>>(* SOMETHING like the preceding should work, but I don't see how to
>>>>combine the three StyleForm results *)
>>>>
>>>>-- 
>>>>Reply to "REPLY TO" address and NOT to the "FROM" address!!
>>>>Otherwise I will never see your reply!!!!!!!!!!!!!!!!!!!!!!
>>>>
>>>>Murray Eisenberg                     murray at math.umass.edu
>>>>Mathematics & Statistics Dept.
>>>>Lederle Graduate Research Tower      phone 413 549-1020 (H)
>>>>University of Massachusetts                413 545-2859 (W)
>>>>710 North Pleasant Street            fax   413 545-1801
>>>>Amherst, MA 01003-9305
>>>>
>>>
>>>
>>>
> 

-- 
Reply to "REPLY TO" address and NOT to the "FROM" address!!
Otherwise I will never see your reply!!!!!!!!!!!!!!!!!!!!!!

Murray Eisenberg                     murray at math.umass.edu
Mathematics & Statistics Dept.
Lederle Graduate Research Tower      phone 413 549-1020 (H)
University of Massachusetts                413 545-2859 (W)
710 North Pleasant Street            fax   413 545-1801
Amherst, MA 01003-9305


  • Prev by Date: Re: Re: format Text in graphics
  • Next by Date: Re: Re: Re: Re: format Text in graphics
  • Previous by thread: Re: Re: format Text in graphics
  • Next by thread: Re: Re: Re: format Text in graphics