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: [mg125707] Re: Piecewise ColorFunction
  • From: Bob Hanlon <hanlonr357 at gmail.com>
  • Date: Thu, 29 Mar 2012 03:03:47 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201203280531.AAA08768@smc.vnet.net>

With the parentheses the function definition is the RHS of the rule.
Without the parentheses the whole rule becomes the function
definition. While obviously not what you intend, it is what you told
Mma to use.


Bob Hanlon

On Wed, Mar 28, 2012 at 1:31 AM, Alexei Boulbitch
<Alexei.Boulbitch at iee.lu> wrote:
> 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: Using Table and ignoring all errors and warnings?
  • Next by Date: RESENDING! RE: Re: Interpolate 2D on irregular grid
  • Previous by thread: Re: Piecewise ColorFunction
  • Next by thread: Re: Piecewise ColorFunction