Seite 1 von 1

Tabelle von Messwerten generieren

Verfasst: So 30. Okt 2016, 23:59
von ExKo
Erstellt werden soll eine Umgebung mit messtab und einen Befehl \messwert, sodass der Quellcode die Tabelle erzeugt. Die Anzahl der Messwerte soll ohne Änderung der Befehle variiert werden können (Zähler/Counter). Das äußere
Erscheinungsbild soll dabei möglichst dem hier dargestellten entsprechen.

\begin{messtab}{Messwerte V1}
\messwert{0.0}{0.0}
\messwert{0.5}{0.7}
\messwert{1.0}{1.2}
\messwert{1.5}{2.1}
\messwert{2.0}{2.5}
\end{messtab}

Bild

Ansatz:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\newenvironment{messtab}[1]{\table\centering\caption{#1}\tabular{cc}}
  {\endtabular\endtable}
\newcommand{\messwert}[2]{#1 & #2 \\}
\begin{document}
\begin{messtab}{Messwerte V1}
  \messwert{0.0}{0.0}
  \messwert{0.5}{0.7}
  \messwert{1.0}{1.2}
  \messwert{1.5}{2.1}
  \messwert{2.0}{2.5}
\end{messtab} 
\end{document}

Jemand eine Ahnung, wie das gehen sollte? :?

Verfasst: Mo 31. Okt 2016, 07:23
von Gast
Was ist denn das Problem? Das Beispiel funktioniert doch. Man kann auch beliebig \messwert-Befehle hinzufügen oder entfernen.

Ich würde allerdings empfehlen beim Laden der Klasse Option captions=tableabove hinzuzufügen, damit der Tabellentitel korrekt als Überschrift formatiert wird.

Statt c-Spalten könnte man mit siunitx S-Spalten verwenden, so dass auch Zahlen mit unterschiedlichen Stellen vor und nach dem Komma sauber platziert werden. Natürlich könnte man die Spalten noch beschriften.

Aber das sollte alles kein Hexenwerk sein und sind nur Detailverbesserungen. Grundsätzlich hast du die Aufgabe IMHO bereits gelöst.

Verfasst: Mo 31. Okt 2016, 10:35
von u_fischer
Falls dein Problem der Zähler ist:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\newcounter{messcnt}
\newenvironment{messtab}[1]{\table\centering\setcounter{messcnt}{0}%
      \caption{#1}\tabular{ccc}
      \# & Zeit & Geschwindigkeit\\}
    {\endtabular\endtable}
\newcommand{\messwert}[2]{\themesscnt\stepcounter{messcnt}& #1 & #2 \\}
\begin{document}
\begin{messtab}{Messwerte V1}
  \messwert{0.0}{0.0}
  \messwert{0.5}{0.7}
  \messwert{1.0}{1.2}
  \messwert{1.5}{2.1}
  \messwert{2.0}{2.5}
\end{messtab}
\end{document}

Verfasst: Mo 31. Okt 2016, 15:45
von ExKo
Vielen Dank, für deine Hilfe.
Aber wie kriegt man nun die Tabelle hin, also die Unterteilung (Striche)?
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\newcounter{messcnt}
\newenvironment{messtab}[1]{\table\centering\setcounter{messcnt}{0}%
   \caption{#1}\tabular{|c|c|c|}
   \# & Zeit[ms] & Geschwindigkeit[m/s]\\}
{\endtabular\endtable}
\newcommand{\messwert}[2]{\themesscnt\stepcounter{messcnt}& #1 & #2 \\}
\begin{document}
   \begin{messtab}{Messwerte V1}
      \messwert{0.0}{0.0}
      \messwert{0.5}{0.7}
      \messwert{1.0}{1.2}
      \messwert{1.5}{2.1}
      \messwert{2.0}{2.5}
   \end{messtab}
\end{document}
Es ist sozusagen unterteilt in 2 Abschnitte (wird nur beim deutlichen hinsehen gesehen, dass es dort getrennt ist):

Bild

Bild

Gesamt:
Bild

Insgesamt soll es so aussehen, nur weiß ich nicht, wie ich es nun tabellenförmig mache? :?

Verfasst: Mo 31. Okt 2016, 16:05
von Gast
Kann es sein, dass dir die kompletten Grundlagen zum Tabellensatz mit LaTeX fehlen? Du suchst vermutlich Befehle wie \hline. Die findest du in jeder vollständigen LaTeX-Einführung. Die vertikalen Linien definiert man mit | in der Spaltendeklaration. Allerdings sind vertikale Linien in Tabellen abzulehnen und horizontale sollte man auf ein Minimum reduzieren. Siehe dazu beispielsweise die [d]booktabs[/d]-Anleitung.

Übrigens ist es besser, wenn du Bilderdateien direkt hier in goLaTeX anhängst, statt irgendwelche externen Quellen zu bemühen, die beispielsweise von meinem AddBlocker aus Sicherheitsgründen ausgefiltert werden.

Verfasst: Di 1. Nov 2016, 09:51
von markusv
Hier mit den von Gast angesprochenen \hlines sowie den Anpassungen an das siunitx-Paket.

Vorteil sind die am Komma ausgerichteten Zahlen und die korrekte Darstellung der Einheiten im Kopf.

Die Hinweise von Gast bezüglich des Studierens einer Einführung sowie der "richtigen" Tabellengestaltung kann ich dir jedoch auch nur ans Herz legen, falls noch nicht geschehen. ;)
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{siunitx}
\newcounter{messcnt}
\newenvironment{messtab}[1]{\table\centering\setcounter{messcnt}{0}%
   \caption{#1}\tabular{|c|S|S|}
   \hline
   \multicolumn{3}{|c|}{\textbf{Messwerte V1}}\\
   \hline
   \# & {Zeit [\si{\milli\s}]} & {Geschwindigkeit [\si[per-mode=symbol]{\m\per\s}]}\\
   \hline\hline}
{\hline\endtabular\endtable}
\newcommand{\messwert}[2]{\themesscnt\stepcounter{messcnt}& #1 & #2 \\}
\begin{document}
   \begin{messtab}{Messwerte V1}
      \messwert{0.0}{0.0}
      \messwert{0.5}{0.7}
      \messwert{1.0}{1.2}
      \messwert{0.5}{2.1}
      \messwert{2.0}{2.5}
      \messwert{12,1}{13}
   \end{messtab}
\end{document}