Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Re: Piecewise ColorFunction

  • To: mathgroup at smc.vnet.net
  • Subject: [mg125664] Re: Piecewise ColorFunction
  • From: Alexei Boulbitch <Alexei.Boulbitch at iee.lu>
  • Date: Wed, 28 Mar 2012 00:31:51 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

On Sunday, March 25, 2012 12:19:21 AM UTC-5, Hugh Goyder wrote:
> The first example below works to give a plot style with colours that vary
 with y-values. I then try to define a Piecewise function for the colour and this does not work. Am I doing something wrong? Thanks for any assistance.
>
> Plot[Sin[x], {x, 0, 4 Pi}, PlotStyle -> Thick,
>  ColorFunction -> Function[{x, y}, ColorData["NeonColors"][y]]]
>
>
> ClearAll[f];
> f[x_, y_] := Piecewise[{{Green, y < 0}, {Red, y >= 0}}]
>
>
> Plot[Sin[x], {x, 0, 4 Pi}, PlotStyle -> Thick, ColorFunction -> f]

I think this does what you want:

Plot[Sin[x], {x, 0, 4 Pi}, PlotStyle -> Thick,  ColorFunctionScaling -> False, ColorFunction -> (Piecewise[{{Green, #2 < 0}, {Red, #2 >= 0}}] &)]


Dear community,
In the above solution (given by David) the parentheses play an intriguing role. Indeed the solution above works, while the same solution but without the round parentheses flanking the Piecewise function, i.e. the following:

Plot[Sin[x], {x, 0, 4 Pi}, PlotStyle -> Thick, ColorFunctionScaling -> False, ColorFunction -> Piecewise[{{Green, #2 < 0}, {Red, #2 >= 0}}] &]

does not work. I wonder, why?

Alexei BOULBITCH, Dr., habil.
IEE S.A.
ZAE Weiergewan,
11, rue Edmond Reuter,
L-5326 Contern, LUXEMBOURG

Office phone :  +352-2454-2566
Office fax:       +352-2454-3566
mobile phone:  +49 151 52 40 66 44

e-mail: alexei.boulbitch at iee.lu






  • Prev by Date: Re: Interpolate 2D on irregular grid
  • Next by Date: Re: Piecewise ColorFunction
  • Previous by thread: Re: Piecewise ColorFunction
  • Next by thread: Re: Piecewise ColorFunction