MathGroup Archive 2011

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

Search the Archive

Re: plotting contours on a sphere

  • To: mathgroup at smc.vnet.net
  • Subject: [mg119482] Re: plotting contours on a sphere
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Mon, 6 Jun 2011 06:23:03 -0400 (EDT)

p3 = SphericalPlot3D[1, {\[Phi], 0, Pi}, {\[Theta], 0, 2 Pi},
  ColorFunctionScaling -> False,
  ColorFunction -> Function[{x, y, z, \[Theta], \[Phi], r},
    ColorData["TemperatureMap"]
     [Rescale[f[\[Phi], \[Theta]], {-1, 1}]]],
  Mesh -> 9,
  MeshFunctions ->
   {Function[{x, y, z, \[Theta], \[Phi], r}, 
     f[\[Phi], \[Theta]]]}]


Bob Hanlon

---- J Davis <texasautiger at gmail.com> wrote: 

=============
I would like to plot the contours of a given function f on the surface
of a sphere.

More specifically, I'd like to "wrap" the contours in p2 below onto
the surface of the sphere in p3.

f[\[Theta]_, \[Phi]_] = Sin[\[Theta] + \[Phi]];
p1 = Plot3D[f[\[Theta], \[Phi]], {\[Theta], 0, 2 Pi}, {\[Phi], 0, Pi},
    PlotRange -> All, AxesLabel -> {\[Theta], \[Phi]},
   ColorFunction -> ColorData["TemperatureMap"]];
p2 = ContourPlot[
   f[\[Theta], \[Phi]], {\[Theta], 0, 2 Pi}, {\[Phi], 0, Pi},
   PlotRange -> All, FrameLabel -> {\[Theta], \[Phi]},
   ColorFunction -> ColorData["TemperatureMap"]];
p3 = SphericalPlot3D[1, {\[Phi], 0, Pi}, {\[Theta], 0, 2 Pi},
   ColorFunctionScaling -> False,
   ColorFunction ->
    Function[{x, y, z, \[Theta], \[Phi], r},
     ColorData["TemperatureMap"][
      Rescale[f[\[Phi], \[Theta]], {-1, 1}]]]];
GraphicsRow[{p1, p2, p3}, ImageSize -> 750]

Thanks in advance for any insight you can offer.

Best,
John





  • Prev by Date: Re: Cool FTP implementation with "minimal" Python
  • Next by Date: How show axes labels with AxesOrigin->{0,0,0} in 3D?
  • Previous by thread: plotting contours on a sphere
  • Next by thread: Re: plotting contours on a sphere