# Contour Plot in Spherical coordinates

There is a ContourPlot3Din Cartesian coordinates, and afik none in dealing with implicit functions in spherical coordinates.

EDIT1:

If provided the spherical plot could define a surface of coaxal cones/surface intersections $$\phi =$$const; surface/ layered sphere intersection lines $$r=$$ const; surface/ several radial pie cuts $$\theta=$$ const...

which are visible on the surface under discussion analogously to ContourPlot3D , plotted directly with chosen intervals in $$(r, \theta, \phi).$$

That is,

just as intersection marks are left outside on any surface plotted for Cartesian coordinates $$(x=const, y= const, z=const)$$ in ContourPlot3D,

so also intersection marks should be left on any surface plotted for Spherical coordinates $$(\phi=const, \theta= const,r=const)$$.

Imagined implicit intersections somewhat like,

ContourPlot3DSph[ (r + Sin[phi - theta]) (r* theta+2)==0, {phi,.5,3}, {theta,0,3}, {r,1,2}]


I understand there is no such plot function available now..

There may be separate code or Cartesian related short cuts. Thanks for all indications.

• Well... this isn't quite a ContourPlot. In a ContourPlot you specify a scalar function and the number of contours you desire, and the contours are displayed. There is no specification of the form f[.,.,.] == 0, and most certainly never wrapped in brackets. If you have a specific function, perhaps we can help. Aug 13, 2021 at 22:27
• Scalar here also, analogously. The intersection is with several cone nappes of different $\phi$ values, $r=$ const cylinder intersections , pie segments $\theta = 0, \pi/6$ by radial cuts and so on. The Cartesian ContourPlot3D level contours are defined by intersecting planes of infinite radii of curvature by $(x,y,z)-$ spacing /intervals chosen by default for level lines. Aug 13, 2021 at 22:50
• r= const is the spherical intersections instead of cylinder intersections since it is the spherical coordinate,not the cylinder coordinate. Aug 15, 2021 at 8:54
• Yes thanks for pointing out, that was my error hope obvious, so re-edited the full post. Aug 16, 2021 at 21:37

There is a ContourPlot3Din Cartesian coordinates, and afik none in dealing with implicit functions in spherical coordinates.

From the documentation page:

SphericalPlot3D[
1 + Sin[5 \[Phi]] Sin[10 \[Theta]]/10, {\[Theta], 0, Pi}, {\[Phi], 0,
2 Pi}] -------------------------------------------------- EDIT 16Aug2021

There is no SphericalContourPlot3D. I am not sure whether you want contours in spherical coordinates too, or in Cartesian coordinates, but take a look at the following page and the Application section as well. I searched through the names of all functions for 'contour'.

SliceContourPlot3D A prior related post is here.

• Here we change some condition to illustrate the full situation.
eqn = TransformedField[
"Spherical" ->
"Cartesian", (r*θ - 2) (r + Sin[ϕ - θ]) ==
0 , {r, θ, ϕ} -> {x, y, z}];
contrains =
TransformedField["Spherical" -> "Cartesian",
0 < r < 2 && 0 < θ < 3 &&
0.5 < ϕ < 3 , {r, θ, ϕ} -> {x, y, z}];
ContourPlot3D[
eqn // Evaluate, {x, y, z} ∈
ImplicitRegion[contrains, {x, y, z}], RegionBoundaryStyle -> None,
PlotPoints -> 20, MaxRecursion -> 2] • Another way which is not so effective.
trans[r_, θ_, ϕ_] =
CoordinateTransform[
"Spherical" -> "Cartesian", {r, θ, ϕ}];
reg = ParametricRegion[{trans[
r, θ, ϕ], (r*θ - 2) (r +
Sin[ϕ - θ]) == 0 }, {{r, 0, 2}, {θ, 0,
3}, {ϕ, 0.5, 3}}];
dreg = DiscretizeRegion[reg, MaxCellMeasure -> .0001];
RegionPlot3D[dreg, Mesh -> All] 