Re: Parts in color
- To: mathgroup at smc.vnet.net
- Subject: [mg35922] Re: [mg35905] Parts in color
- From: "Dott. Roberto Cavaliere - SciSoft s.r.l" <rcavaliere at scisoft.it>
- Date: Thu, 8 Aug 2002 06:06:12 -0400 (EDT)
- References: <200208070959.FAA04533@smc.vnet.net>
- Reply-to: "Dott. Roberto Cavaliere - SciSoft s.r.l" <rcavaliere at scisoft.it>
- Sender: owner-wri-mathgroup at wolfram.com
Hi Carlos, there are different ways to do this, I post just two of these, I tested on expr = Expand[(x+y+z+x y +x z + z y )^50]. ExpressionToRedNumberFirst[expr_]:= DisplayForm[ MapAll[ If[Head[#]===Power,#, Map[ If[ NumberQ[#], StyleBox[#, FontColor->RGBColor[1,0,0]], #]&, #]]&, expr]] ExpressionToRedNumberSecond[expr_]:= DisplayForm[ ReplaceAll[ Replace[expr, number_?NumberQ-> StyleBox[number, FontColor\[Rule]RGBColor[1,0,0]], 1], {Times[number_?NumberQ, others___]-> Times[StyleBox[number, FontColor->RGBColor[1,0,0]],others]}]] Using these functions you can view any (and only) coefficients in red color. The problem is that results are no more considered as polynomial expression, that means if you assign x= 0 and evaluate the previous result you obtain an expression with some StyleBox forms inside. To solve this problem simply I define another function like this: RedNumberToExpression[expr_]:=First[ReplaceAll[expr, StyleBox[ number_, ___] -> number]] Follow an example: _____________________________________________________________ In[1]:= expr=Expand[(1+x y)^2] Out[1]= 1 + 2 x y + x^2 y^2 In[2]:= result=ExpressionToRedNumberFirst[expr] Out[2] = x^2 y^2 + 1+ x y 2 (where the number, but noexponents, are in red) In[3]:= result /. {x->0, y->0, z->0} Out[3]= 1 (in red) In[4]:= result +2 Out[4]= 2+1 (1 is red) In[5]:=RedNumberToExpression[result] + 2 Out[5]= 3 _____________________________________________________________ Hope this is what you are looking for. Roberto Cavaliere ----- Original Message ----- From: "Carlos Cabrera Zuniga" <carloscz at ift.unesp.br> To: mathgroup at smc.vnet.net Subject: [mg35922] [mg35905] Parts in color > > Hi Group > > Suppose you have > > expr = (1+x y)^ 5 // Expand > > but you want the answer > with only numbers (but not exponents) displayed in red, the rest black > as usual. > > Yet i cant find how to do it efficiently. > > Thanks very much in advance > Carlos > > > > > >
- References:
- Parts in color
- From: "Carlos Cabrera Zuniga" <carloscz@ift.unesp.br>
- Parts in color