# How to make a 3D plot using polar coordinates?

From the beginning: I have function $u(r)$ and radial symmetry in system. Also I've got results as data array ${u_i(r_i)}$. And I want to plot it as $u(x,y)$. Due to radial symmetry its gonna be like $x=r \cos(\varphi), y=r \sin(\varphi)$ In other words I have function profile and want to "integrate" it over $2\pi\,\mathrm d\varphi$. Like this for Gaussian

• Welcome to Mathematica.SE! I suggest that: 1) You take the introductory Tour now! 2) When you see good questions and answers, vote them up by clicking the gray triangles, because the credibility of the system is based on the reputation gained by users sharing their knowledge. Also, please remember to accept the answer, if any, that solves your problem, by clicking the checkmark sign! 3) As you receive help, try to give it too, by answering questions in your area of expertise. May 19, 2015 at 18:50
• Use RevolutionPlot3D[] instead. May 19, 2015 at 19:03
• Have you looked at ParametricPlot3D? I believe it can be applied. May 19, 2015 at 19:04
• All this works if I have a rule for my U(r) -> U(x,y). But I have to assign a numerical value from list of already obtained values to new rule for (x,y) to build concentric circles. Maybe I'm missing something.I'm novice in mathematica, all my knowledges based on F1 help May 19, 2015 at 19:28

One option would be to use RevolutionPlot3D.

u = Table[Sin[2 \[Pi]*r], {r, 0, 1, 0.1}]; (*u is a dummy u[r]*)
f = ListInterpolation[u, {0, 1}]; (*Create an interpolating function over the range {0,1}*)
(*Plot it over the domain.*)
RevolutionPlot3D[f[r], {r, #1, #2}] & @@@ f["Domain"]


You could also generate the points yourself and use ListPointPlot3D

u = Table[{r, Sin[2 \[Pi]*r]}, {r, 0, 1, 0.1}];(*table of {r,u[r]}*)
xyz = Flatten[Table[{#1*Cos[\[Theta]], #1*Sin[\[Theta]], #2} & @@@ u, {\[Theta],0, 2 \[Pi], 2 \[Pi]/100} ], 1];
ListPointPlot3D[
xyz
, Filling -> Axis
]