Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2010

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

Search the Archive

Re: ContourStyle Question

  • To: mathgroup at smc.vnet.net
  • Subject: [mg110578] Re: ContourStyle Question
  • From: Maxim <m.r at inbox.ru>
  • Date: Sat, 26 Jun 2010 03:11:29 -0400 (EDT)
  • References: <hvv4ul$gt$1@smc.vnet.net>

On Jun 24, 3:28 am, Jon <jkpa... at hotmail.com> wrote:
> Hi All
>
> I'd like to plot contour lines consisting of a solid line with short diagonal lines on one side, something like this
>
> --------------------  <---(solid line along the contour)
> /////////////////  <---(short diagonal lines on one side)
>
> I'm making a plot of experimental data and I want to show that the regionon one side of the contour is allowed while the other side is not.
>
> I don't want resort to shading the entire region because it is quite a busy figure and the colouring will make it difficult to read.
>
> Is there a ContourStyle which does this?
> If not, can I create my own ContourStyle which can?
>
> Thanks in advance!
>
> Jon

Probably will need some tweaking for your specific application, but
you can do something like this:

f[x_, y_] := Cos[x] + Cos[y] - 1/2
Normal@ContourPlot[f[x, y] == 0, {x, 0, 4 Pi}, {y, 0, 4 Pi}] /.
 Line[pts_, s___] :> Module[{pp = pts[[1 ;; -1 ;; 5]], nv},
   nv = Differences[pts][[1 ;; -1 ;; 5]].{{0, 1}, {-1, 0}};
   If[Length@nv < Length@pp, pp = Most@pp];
   nv *= .25/Sqrt@Total[nv^2, {2}];
   nv = pp + Sign[f @@ Transpose[pp + nv]] nv;
   {Line[pts, s], Gray, Line[Transpose@{pp, nv}]}]

Maxim Rytin
m.r at inbox.ru


  • Prev by Date: Re: Image processing Questions
  • Next by Date: Re: Image processing Questions
  • Previous by thread: Re: ContourStyle Question
  • Next by thread: precedence for ReplaceAll?