[Tex/LaTex] drawing a circle in the xy plane when using 3d coordinates

3dtikz-pgf

I am trying to make a circle in the xy plane that has walls that slope up. How can I do this? Basically a bucket with a bigger opening then base.

\documentclass{article}
\usepackage{tikz, tikz-3dplot} 
\begin{document}
\begin{center}
  \tdplotsetmaincoords{72}{120}
  \begin{tikzpicture}[line join = round, line cap = round, >=triangle 45,
    tdplot_main_coords]
    \draw[->] (0,0,0) -- (3,0,0) node[left, scale = .75] {$x$};
    \draw[->] (0,0,0) -- (0,3,0) node[right, scale = .75] {$y$};
    \draw[->] (0,0,0) -- (0,0,2) node[above, scale = .75] {$z$};        
  \end{tikzpicture}
\end{center}
\end{document}

Best Answer

Try this! I took the code from here http://www.texample.net/tikz/examples/dandelin-spheres/ and did some simplifications.

\documentclass{article}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\begin{document}

\tdplotsetmaincoords{70}{0}
\begin{tikzpicture}[tdplot_main_coords]

\def\h{2.5}% height of cup
\def\r{2}% reason of two radius

\foreach \t in {5,10,...,360}
    \draw[magenta] ({cos(\t)},{sin(\t)},0) --({2*cos(\t)},{2*sin(\t)},{2.0*\h});
\draw[magenta,very thick] (1,0,0) % lower circle
    \foreach \t in {5,10,...,360}
        {--({cos(\t)},{sin(\t)},0)}--cycle;
\draw[magenta,very thick] (1,0,0) % upper circle
    \foreach \t in {5,10,...,360}
    {--({\r*cos(\t)},{\r*sin(\t)},{2*\h})}--cycle;

\end{tikzpicture}

\end{document}