What is the best way to visualize a real function on a sphere as a mountain, using spherical coordinates?

I would like to plot ArcCos[Cos[longitude] * Cos[latitude]] on a sphere in a way that I can see the sphere and the function on it like a mountain above the sea.

So the sphere should have radius 10, show the poles and the equator, and I should be able to the see both the sphere and the function above it. What is the best way? Ideally, I would be able to rotate the result with my mouse ...


I suppose it could be like this. Change the "5" to change the scale of the sphere.

ParametricPlot3D[{5 {Cos[\[Phi]] Cos[\[Theta]], 
Sin[\[Phi]] Cos[\[Theta]], 
Sin[\[Theta]]}, (5 + 
 ArcCos[Cos[\[Phi]] Cos[\[Theta]]]) {Cos[\[Phi]] Cos[\[Theta]], 
Sin[\[Phi]] Cos[\[Theta]], Sin[\[Theta]]}}, {\[Phi], -Pi, 
Pi}, {\[Theta], -Pi/2, Pi/2}, PlotStyle -> Opacity[0.5], 
AxesLabel -> {"x", "y", "z"}, ColorFunctionScaling -> False]

enter image description here


Maybe this is waht you look for?

 (10 + ArcCos[Cos[ϕ] Cos[θ]]) {Cos[ϕ] Cos[θ], Sin[ϕ] Cos[θ], Sin[θ]},
 {ϕ, -Pi, Pi}, {θ, -Pi/2, Pi/2},
 ColorFunction -> Function[{x, y, z, ϕ, θ}, ColorData["AlpineColors"][Sqrt[x^2 + y^2 + z^2] - 12]],
 AxesLabel -> {"x", "y", "z"},
 ColorFunctionScaling -> False

enter image description here


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.