Tabelle streikt.

Tabellen und Grafiken erstellen und anordnen


Qrux
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Di 24. Jul 2012, 18:42

Tabelle streikt.

Beitrag von Qrux »

Ich habe ein vorliegendes (für mich) größeres LaTeX-Dokument erstellt und binde im Anhang ein Beispiel ein. Ich habe leider ein Problem mit den dort vorkommenden Tabellen. Diese lösen nämlich Fehler-Meldungen aus, die ich mir nicht erklären kann.
Wenn ich unten zitierten Code-Abschnitt aus dem Dokument entferne, ist alles perfekt.
Wenn er drin steht, habe ich folgende Fehlermeldung:
! Extra }, or forgotten $.
<template> \unskip \hfil }
                          \hskip \tabcolsep \endtemplate 
l.206 			T1 & $ x_1 &
                      x_2 & \lambda_1 & \lambda_2 $  & ~\\
? 
Woran könnte das liegen?
\begin{table}[h] \centering
\begin{tabular}[t]{c | *{4}{c} || c}
			T1 & $ x_1 & x_2 & \lambda_1 & \lambda_2 $  & ~\\ 
			\hline
			\mu_1 $ & -1 & 0 & 1 & -2 $ & -2 \\
			\mu_2 $ & 0 & -2 & -1 & -1 $ & -4 \\
			y_1 $ & -1 & (1) & 0 & 0 $ & 1 \\
			y_2 $ & 2 & 1 & 0 & 0 $ & 8
\end{tabular}
\end{table}
Eingebundene Pakete:
\documentclass[a4paper]{report}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{geometry}
\geometry{a4paper, top=25mm, left=30mm, right=25mm, bottom=30mm,
headsep=10mm, footskip=12mm}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[scaled]{helvet}
\usepackage{eulervm}
\usepackage{graphicx}
\usepackage{chngcntr}
\counterwithout{footnote}{chapter}
\newtheorem{satz}{Satz}
\newtheorem{lem}{Lemma}
\newtheorem{ex}{Beispiel}
Bedanke mich im Voraus für Anregungen! Ich hoffe, ich habe nur irgendeinen Fehler in der Umgebung...

Typo
Forum-Anfänger
Forum-Anfänger
Beiträge: 35
Registriert: Mi 9. Jul 2008, 16:36

Re: Tabelle streikt.

Beitrag von Typo »

Qrux hat geschrieben: ... Tabellen. Diese lösen nämlich Fehler-Meldungen aus, die ich mir nicht erklären kann. ... Wenn er drin steht, habe ich folgende Fehlermeldung:
! Extra }, or forgotten $.
<template> \unskip \hfil }
                          \hskip \tabcolsep \endtemplate 
l.206 			T1 & $ x_1 &
                      x_2 & \lambda_1 & \lambda_2 $  & ~\\
? 
1. Ein lauffähiges (Minimal-)Beispiel wäre schön gewesen.
2. Die Fehlermeldung weist darauf hin, dass mit der Kennzeichnung des Mathematikmodus etwas nicht stimmt.

Es gibt sicherlich elegantere Lösungen, um anstelle einzelner Zellen gleich die ganze Tabelle im Mathemodus zu setzen, aber auf die Schnelle funktioniert ...
\documentclass[a4paper,ngerman]{report}
\usepackage[utf8]{inputenc}
\usepackage{babel}

\begin{document}

\begin{table}[h] \centering
\begin{tabular}[t]{c | *{4}{c} || c}
         T1 & $ x_1 $ & $ x_2 $ & $ \lambda_1$ & $\lambda_2 $  & ~\\
         \hline
         $ \mu_1 $ & $ -1 $ & 0 & 1 & $ -2 $ & $ -2 $ \\
         $ \mu_2 $ & 0 & $ -2 $ & $ -1 $ & $ -1 $ & $ -4 $ \\
         $ y_1 $ & $ -1 $ & (1) & 0 & 0  & 1 \\
         $ y_2 $ & 2 & 1 & 0 & 0 & 8
\end{tabular}
\end{table}

\end{document}

Qrux
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Di 24. Jul 2012, 18:42

Beitrag von Qrux »

Danke dir! Ich hatte nicht im Blick, dass ich auch jede Zahl mit Minus davor in $$ setzen muss.

Was mich aber sehr interessiert: Wie kann ich denn die ganze Tabelle in den Mathemodus setzen?

Ich habe im Netz gefunden, dass man theoretisch für einzelne Spalten diesen Code benutzen kann:
>{$}c<{$}
Damit müsste dann in dem Beispiel folgender Code funktionieren (erst einmal nur für die erste Spalte):
\documentclass[a4paper,ngerman]{report}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{array}

\begin{document}

\begin{table}[h] \centering
\begin{tabular}[t]{>{$}c<{$} | *{4}{c} || c}
         T1 & $ x_1 $ & $ x_2 $ & $ \lambda_1$ & $\lambda_2 $  & ~\\
         \hline
         \mu_1 & $ -1 $ & 0 & 1 & $ -2 $ & $ -2 $ \\
         \mu_2 & 0 & $ -2 $ & $ -1 $ & $ -1 $ & $ -4 $ \\
         y_1 & $ -1 $ & (1) & 0 & 0  & 1 \\
         y_2 & 2 & 1 & 0 & 0 & 8
\end{tabular}
\end{table}

\end{document} 
Das macht er auch, seit ich
\usepackage{array}
mit aufgenommen habe.

Frage: Gibt es eventuell noch elegantere Wege? Bin gerade jedenfalls schon ziemlich begeistert! :D

Benutzeravatar
localghost
Forum-Meister
Forum-Meister
Beiträge: 825
Registriert: Di 8. Jul 2008, 15:40
Wohnort: Braunschweig

Gibt es

Beitrag von localghost »

Qrux hat geschrieben:[…] Wie kann ich denn die ganze Tabelle in den Mathemodus setzen? […] Gibt es eventuell noch elegantere Wege? […]
\documentclass[
  captions=tableabove,
  ngerman
]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
  adieresis={ä},
  germandbls={ß},
  Euro={€}
}
\usepackage{babel}

\begin{document}
  \begin{table}[!ht]
    \caption{Tabelle im Mathematik"=Modus}
    \label{tab:mathtab}
    \centering
    \(
      \begin{array}{c|*{4}{r}||r}
         T1    & x_1 & x_2 & \lambda_1 & \lambda_2 & \\ \hline
         \mu_1 & -1  & 0   & 1  & -2 & -2 \\
         \mu_2 & 0   &  -2 & -1 &  -1  &  -4  \\
         y_1   &  -1 & (1) & 0 & 0 & 1 \\
         y_2   & 2 & 1 & 0 & 0 & 8
      \end{array}
    \)
  \end{table}
\end{document}

Thorsten
TeX und LaTeX, Fragen und Antworten – TeXwelt

¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
² System: openSUSE 13.1 (Linux 3.11.6), TeX Live 2013, TeXworks 0.5 (r1349)
³ Lernt gerade TeX (und versucht, es zu verstehen).

Typo
Forum-Anfänger
Forum-Anfänger
Beiträge: 35
Registriert: Mi 9. Jul 2008, 16:36

Beitrag von Typo »

Qrux hat geschrieben:Wie kann ich denn die ganze Tabelle in den Mathemodus setzen?

Ich habe im Netz gefunden, dass man theoretisch für einzelne Spalten diesen Code benutzen kann:
>{$}c<{$}
Das hatte ich auch gefunden, aber im ersten Moment keine Zeit, mir das näher anzuschauen.

Damit lässt sich Dein Beispiel so vereinfachen, dass man innerhalb der Tabellenzellen kein $ mehr braucht:
\documentclass[a4paper,ngerman]{report}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{array}

\begin{document}

\begin{table}[h] \centering
\begin{tabular}[t]{>{$}c<{$} | *{4}{>{$}c<{$}} || >{$}c<{$}}
         T1 & x_1 & x_2 & \lambda_1 & \lambda_2 & ~\\
         \hline
         \mu_1 & -1 & 0 & 1 & -2 & -2 \\
         \mu_2 & 0 & -2 & -1 & -1 & -4 \\
         y_1 & -1 & (1) & 0 & 0  & 1 \\
         y_2 & 2 & 1 & 0 & 0 & 8
\end{tabular}
\end{table}

\end{document}
 

Antworten