MathGroup Archive 2013

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

Search the Archive

color surface according to absolut value of the gradient

  • To: mathgroup at smc.vnet.net
  • Subject: [mg131452] color surface according to absolut value of the gradient
  • From: conrad.clausz at gmail.com
  • Date: Mon, 8 Jul 2013 04:23:02 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-outx@smc.vnet.net
  • Delivered-to: mathgroup-newsendx@smc.vnet.net

I have a set of data, let's say

data = Flatten[
   Table[{i, j, 
     Sin[i] Cos[
       j]}, {i, -\[Pi], \[Pi], .25}, {j, -\[Pi], \[Pi], .25}], 1];

If I plot this, everything is fine. To get the derivatives I interpolated the set of data

f = Interpolation[data];

If I then plot the absolute value of the gradient in the same range it also looks correct.

ListPlot3D[
 Flatten[Table[{i, j, 
    Sqrt[D[f[x, y], x]^2 + D[f[x, y], y]^2] /. {x -> i, 
      y -> j}}, {i, -\[Pi], \[Pi], .25}, {j, -\[Pi], \[Pi], .25}], 1]]

Now I want to plot the original data with the surface colored according to the values of the last plot. I tried

ListPlot3D[data, 
 ColorFunction -> (ColorData["Rainbow"][
     Sqrt[D[f[x, #2], x]^2 + D[f[#1, y], y]^2] /. {x -> #1, 
       y -> #2}] &)]

but the result is definitely off. What am I making wrong?

Thanks in advance,
Conrad



  • Prev by Date: Unwanted parentheses appearing in a notebook that is opened by a
  • Next by Date: Re: files
  • Previous by thread: Unwanted parentheses appearing in a notebook that is opened by a
  • Next by thread: Re: color surface according to absolut value of the gradient