Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I'd like to do the following figure using TikZ:

I would know how to to this using \clip, \draw, arc and \draw[->] in 2D. But how can I draw this on a plane that lies in the x-z plane?

share|improve this question
    
May be the tikz-3dplot package could be useful. –  Manuel Dec 23 '12 at 22:35
    
Could you please post a minimal example to get people started, using the commands you mentioned? It's no fun to start from scratch, but with the framework in place, it will be quite easy to get this into the x-z plane. –  Jake Dec 23 '12 at 23:06
    
@Jake: True, but I learned a lot going through the documentation myself. I posted my solution as an answer. –  queueoverflow Dec 24 '12 at 0:14
add comment

1 Answer 1

up vote 13 down vote accepted

The tikz-3dplot package totally rocks. I just drew my picture in the x-y-plane and rotated it then. The only caveat is that rectangle does not work any more, one has to supply all four corners by hand.

\begin{tikzpicture}[scale=2]
    \tdplotsetmaincoords{45}{200}

    \begin{scope}[tdplot_main_coords]
        \draw (0, 0) -- (5, 0) -- (5, 5) -- (0, 5) -- cycle;
        \node[below right] at (0, 5) {$\R^3$};

        \begin{scope}
            \clip (0, 0) -- (5, 0) -- (5, 5) -- (0, 5) -- cycle;
            \fill[opacity=20, color=black!20] ($(1, 1)+(45:3)+(0.5, 0)$) arc (0:360:0.5);
            \begin{scope}[->, thick]
                \draw (1, 1) -- ++(60:3) node[midway, below] {$t$};
                \draw (1, 1) -- ++(100:2.5) node[midway, right] {$t_0$};
                \draw (1, 1) -- ++(30:3.5) node[midway, below] {$t_1$};
                \draw (1, 1) -- ++(0:1.5) node[midway, above] {$t$};
            \end{scope}
            \draw (4, 1) arc (0:360:3);
            \draw (3.5, 1) arc (0:360:2.5);
            \draw (4.5, 1) arc (0:360:3.5);
            \draw (2.5, 1) arc (0:360:1.5);
        \end{scope}

        \draw[thick, ->] (5, 5, 0) -- ++(0, 0, 2) node[sloped, midway, above] {Zeitachse};  
    \end{scope}
\end{tikzpicture}
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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