Re: Piecewise ColorFunction
- To: mathgroup at smc.vnet.net
- Subject: [mg125657] Re: Piecewise ColorFunction
- From: "djmpark" <djmpark at comcast.net>
- Date: Mon, 26 Mar 2012 01:46:39 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <22324383.161322.1332653209094.JavaMail.root@m06>
Two problems: the symbol f is not a Function, and ColorFunctionScaling->
False is needed.
ClearAll[f];
f[x_, y_] := Piecewise[{{Green, y < 0}, {Red, y >= 0}}]
Plot[Sin[x], {x, 0, 4 Pi}, PlotStyle -> Thick,
ColorFunctionScaling -> False,
ColorFunction -> (f[#1, #2] &)]
Or define something that is a Function.
ClearAll[g];
g := Function[{x, y}, Piecewise[{{Green, y < 0}, {Red, y >= 0}}]]
Plot[Sin[x], {x, 0, 4 Pi}, PlotStyle -> Thick,
ColorFunctionScaling -> False,
ColorFunction -> g
]
Otherwise, your use of Piecewise is a neat way to color!
David Park
djmpark at comcast.net
http://home.comcast.net/~djmpark/index.html
From: Hugh Goyder [mailto:h.g.d.goyder at cranfield.ac.uk]
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]