2

I have a Parametric Plot that has very high and low values. I used this answer Project RegionPlot3D to 2D using hue/color function to show third dimension to project the surface onto the 2D plane. This is the code:

ParametricPlot3D[{u, v, Exp[u]*Cos[u - v]}, {u, 1, 3}, {v, 1, 5}, 
 Boxed -> False, ViewPoint -> {0, 0, Infinity}, Axes -> False, 
 ColorFunction -> "TemperatureMap", Mesh -> None, Background -> Black]

However when I do that the resulting image seems to still have the shading which is what I want to avoid. I also would like to change the color function so that the color function goes from white to a darker orange going through shade of orange only.

maggie
  • 41
  • 5

3 Answers3

3

You could follow this example from the documentation and use Glow:

ParametricPlot3D[{u, v, Exp[u]*Cos[u - v]}, {u, 1, 3}, {v, 1, 5}, 
 Boxed -> False, ViewPoint -> {0, 0, Infinity}, Axes -> False, 
 ColorFunction -> 
  Function[{x, y, z}, Glow[ColorData["TemperatureMap", z]]], 
 Mesh -> None, Lighting -> None]

enter image description here

Here is an example of adjusting the range of colors to be white to orange:

ParametricPlot3D[{u, v, Exp[u]*Cos[u - v]}, {u, 1, 3}, {v, 1, 5}, 
 Boxed -> False, ViewPoint -> {0, 0, Infinity}, Axes -> False, 
 ColorFunction -> 
  Function[{x, y, z}, 
   Glow[ColorData["TemperatureMap", 
     Rescale[z, {-10, 20}, {0.5, 0.95}]]]], 
 ColorFunctionScaling -> False, Mesh -> None, Lighting -> None]

ColorFunctionScaling False example

Tim Laska
  • 16,346
  • 1
  • 34
  • 58
  • Thank you!! I actually tried to use glow but i was missing the z, I didn't know how to make it work – maggie Jul 20 '20 at 22:39
3

You could use white ambient light and a custom ColorFunction based on a Blend of White and Darker@Orange.

ParametricPlot3D[{u, v, Exp[u]*Cos[u - v]}, {u, 1, 3}, {v, 1, 5}
 , Boxed -> False
 , ViewPoint -> {0, 0, Infinity}
 , Axes -> False
 , ColorFunction -> Function[{x, y, z, u, v}, Blend[{White, Darker@Orange}, z]]
 , Mesh -> None
 , Background -> Black
 , Lighting -> {"Ambient", White}
]

ParametricPlot3D + ambient lighting + white->dark orange blended color function

Josh Bishop
  • 741
  • 3
  • 8
2

You can also use the option NormalsFunction:

ParametricPlot3D[{u, v, Exp[u] Cos[u - v]}, {u, 1, 3}, {v, 1, 5}, 
 Boxed -> False,
 ViewPoint -> {0, 0, ∞}, 
 Axes -> False, 
 Mesh -> None, 
 ColorFunction -> "TemperatureMap", 
 NormalsFunction -> ({1, 1, 0} &)]

enter image description here

Use ColorFunction -> (Blend[{White, Orange}, #3] &) (as in Josh Bishop's answer) we get:

enter image description here

Use ColorFunction -> (Blend[{White, Yellow, Red}, #3] &) to get

enter image description here

kglr
  • 394,356
  • 18
  • 477
  • 896