Ich verwende TikZ zum Erstellen von Diagrammen, nun übertrage ich Text und Diagramme für einen Seminarvortrag in eine Präsentation. Jedoch funktionieren TikZ-Diagramme mit beamer nicht mehr, die einwandfrei mit scrartcl liefen. Scheinbar sind es die, wo ich das Diagramm mit einer TikZ matrix erstelle. Hier ein Beispiel:

\documentclass{beamer}
\usetheme{Montpellier}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{positioning,matrix,arrows}
\newcommand*{\mal}{\mathbin{\raisebox{0.3ex}{\scriptsize$\otimes$}}}
\DeclareMathOperator{\id}{id}
\begin{document}
 \title{Kategorientheorie}
 \section{Koalgebren}
 \begin{frame}
  \begin{center}
    Koassoziativitätsgesetz der Komultiplikation

    \bigskip
    \begin{tikzpicture}
      \matrix (m) [matrix of math nodes,row sep=3em,column sep=3em,]
      {
         A & A\mal A \\
         A\mal A & A\mal A \mal A \\
      };
      \path[-stealth]
        (m-1-1) edge node [left] {$\scriptstyle\varphi$} (m-2-1)
                edge node [above] {$\scriptstyle\varphi$} (m-1-2)
        (m-2-1.east|-m-2-2) edge node [above]
                {$\scriptstyle\varphi\otimes\id$} (m-2-2)
        (m-1-2) edge node [right]
                {$\scriptstyle\id\otimes\varphi$} (m-2-2);
    \end{tikzpicture}
  \end{center} 
\end{frame}
\end{document}

Ich erhalte die Fehlermeldung

! Missing $ inserted.
<inserted text> 
                $
l.32 \end{frame}

Warum ist das so, und wie kann ich es reparieren?

gefragt 06 Jul '13, 17:10

Felix's gravatar image

Felix
1.3k525667
Akzeptiert-Rate: 47%

bearbeitet 13 Aug '13, 14:10

cgnieder's gravatar image

cgnieder
22.1k253463


Das Problem ist, dass TikZ das Zeichen & aktiv macht und als \pgfmatrixnextcell definiert. Es gibt zwei mögliche Lösungen: die Option fragile zur frame Umgebung hinzufügen:

\begin{frame}[fragile]
  \begin{center}
    Koassoziativitätsgesetz der Komultiplikation

    \bigskip
    \begin{tikzpicture}
      \matrix (m) [matrix of math nodes,row sep=3em,column sep=3em,]
      {
         A & A\mal A \\
         A\mal A & A\mal A \mal A \\
      };
      \path[-stealth]
        (m-1-1) edge node [left] {$\scriptstyle\varphi$} (m-2-1)
                edge node [above] {$\scriptstyle\varphi$} (m-1-2)
        (m-2-1.east|-m-2-2) edge node [above]
                {$\scriptstyle\varphi\otimes\id$} (m-2-2)
        (m-1-2) edge node [right]
                {$\scriptstyle\id\otimes\varphi$} (m-2-2);
    \end{tikzpicture}
  \end{center} 
\end{frame}

Zweite - und meiner Meinung nach vorzuziehende - Lösung: TikZ sagen, dass die Matrix ein anderes Makro verwenden soll mit der Option /tikz/ampersand replacement=<macro name>, zum Beispiel \&:

\begin{frame}
  \begin{center}
    Koassoziativitätsgesetz der Komultiplikation

    \bigskip
    \begin{tikzpicture}
      \matrix (m) [matrix of math nodes,row sep=3em,column sep=3em,ampersand replacement=\&]
      {
         A \& A\mal A \\
         A\mal A \& A\mal A \mal A \\
      };
      \path[-stealth]
        (m-1-1) edge node [left] {$\scriptstyle\varphi$} (m-2-1)
                edge node [above] {$\scriptstyle\varphi$} (m-1-2)
        (m-2-1.east|-m-2-2) edge node [above]
                {$\scriptstyle\varphi\otimes\id$} (m-2-2)
        (m-1-2) edge node [right]
                {$\scriptstyle\id\otimes\varphi$} (m-2-2);
    \end{tikzpicture}
  \end{center} 
\end{frame}
Permanenter link

beantwortet 06 Jul '13, 17:51

cgnieder's gravatar image

cgnieder
22.1k253463
Akzeptiert-Rate: 60%

bearbeitet 06 Jul '13, 17:52

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×731
×141
×58

gestellte Frage: 06 Jul '13, 17:10

Frage wurde gesehen: 36,041 Mal

zuletzt geändert: 13 Aug '13, 14:10