Tabularx multicolumn Darstellung überschneidet sich

Tabellen und Grafiken erstellen und anordnen


UserTob
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 5. Mai 2015, 16:20

Tabularx multicolumn Darstellung überschneidet sich

Beitrag von UserTob »

Hallo liebe LaTeX gemeinde,

ich habe ein Problem mit Tabularx, wenn ich mehr als 7 Einträge in der midrule einfüge bekomme ich eine unschöne, nicht leserliche formatierung. So langsam bin ich am verzweifeln... Villeicht kann mir ja einer Anhand meines Codes und der Vorher/Nachher Screenshots weiterhelfen. :wink:
\begin{table}[hbt]
\centering
\begin{minipage}[t]{1\textwidth} % Breite, z.B. 1\textwidth		
\caption{Verfügbarkeit der Hardware Funktionen} % Überschrift
\begin{tabularx}{\columnwidth}{lclll}
\toprule
\mc{1}{\textbf{Funktion}}  & \mc{1}{\textbf{Soll/Kann}} &\mcc{3}{\textbf{Vefügbarkeit}}   \\
\mc{1}{}  & \mc{1}{} & \mc{1}{\textit{emPC-A500}} & \mc{1}{\textit{emPC-A/iMX6}} & \mc{1}{\textit{emPC-Cx+}}\\
\midrule
\mc{1}{\textbf{Watchdog}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{Nur über COM-Express Modul} \\
\mc{1}{\textbf{CAN-Terminierung}}  & \mc{1}{tbd} & \mcc{3}{Ja (wenn auf dem System CAN vorhanden)} \\
\mc{1}{\textbf{Lese/Schreibe \gls{NVRAM}}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{Ja} \\
\mc{1}{\textbf{Auslesen der Versorgungsspannung}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{n.v.} \\
\mc{1}{\textbf{Auslesen der Temperatur}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{n.v.} & \mc{1}{Ja} \\
\mc{1}{\textbf{LED Ansteuerung}}  & \mc{1}{tbd} & \mc{1}{2 LEDS} & \mc{1}{2 LEDS} & \mc{1}{4 LEDS} \\
\mc{1}{\textbf{Display-Backlight Steuerung}}  & \mc{1}{tbd} & \mcc{3}{Ja (wenn der emPC ein emView ist)} \\
%\mc{1}{\textbf{Lüfter Steuerung}}  & \mc{1}{tbd} & \mcc{1}{n.v.} & \mcc{1}{n.v.} & \mcc{1}{Ja} \\ %TODO wenn einkommentiert ist die tabelle schrott
%\mc{1}{\textbf{Lesen von Systeminformationen}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{Ja} \\ %TODO wenn einkommentiert ist die tabelle schrott
\bottomrule
\end{tabularx}
\source{Eigene Darstellung} % Quelle
\label{tab_hardware_func}
\end{minipage}
\end{table}
 

Im Anang ist der Vorher/ Nachher Screenshots.
Bild
Bild

Grüße
Tobias
Dateianhänge
Funktioniert.JPG
Funktioniert.JPG (59.43 KiB) 2506 mal betrachtet
Schrott.JPG
Schrott.JPG (52.16 KiB) 2496 mal betrachtet

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Erstell uns bitte ein Minimalbeispiel.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

UserTob
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 5. Mai 2015, 16:20

Beitrag von UserTob »

Die documentclass ist vom Layout für meine Ausarbeitung vorgegeben, wenn ich diese unberührt lasse, wird die Tabelle vernünftig dargstellt..... Ich hoffe das hier ist Minimal genung, anders lässt sich der Fehler leider nicht reproduzieren...
\documentclass[
paper=A4,         % alle weiteren Papierformat einstellbar
fontsize=12pt,    % Schriftgröße (12pt, 11pt (Standard))
BCOR12mm,         % Bindekorrektur, bspw. 1 cm
DIV14,            % breiter Satzspiegel
parskip=half*,    % Absatzformatierung s. scrguide 3.1
headsepline,      % Trennline zum Seitenkopf  
%footsepline,     % Trennline zum Seitenfuß
%normalheadings,  % Überschriften etwas kleiner (smallheadings)
listof=totoc,     % Tabellen & Abbildungsverzeichnis ins Inhaltsverzeichnis      
%bibtotoc,        % Literaturverzeichnis im Inhalt 
%draft            % Überlangen Zeilen in Ausgabe gekennzeichnet
footinclude=false,% Fußzeile in die Satzspiegelberechnung einbeziehen 
headinclude=true, % Kopfzeile in die Satzspiegelberechnung einbeziehen 
final             % draft beschleunigt die Kompilierung
]
{scrartcl}

\usepackage{tabularx}
\usepackage{booktabs}
\begin{document}

\newcommand{\mc}[2]{\multicolumn{#1}{>{\setlength{\hsize}{#1\hsize}}X}{#2}}
\newcommand{\mcc}[2]{\multicolumn{#1}{c}{#2}}
\renewcommand{\arraystretch}{1.5} %Zeilenabstand

\begin{table}[hbt]
\centering
\begin{minipage}[t]{1\textwidth} % Breite, z.B. 1\textwidth		
\begin{tabularx}{\columnwidth}{lclll}
\toprule
\mc{1}{\textbf{Funktion}}  & \mc{1}{\textbf{Soll/Kann}} &\mcc{3}{\textbf{Vefügbarkeit}}   \\
\mc{1}{}  & \mc{1}{} & \mc{1}{\textit{emPC-A500}} & \mc{1}{\textit{emPC-A/iMX6}} & \mc{1}{\textit{emPC-Cx+}}\\
\midrule
\mc{1}{\textbf{Watchdog}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{Nur über COM-Express Modul} \\
\mc{1}{\textbf{CAN-Terminierung}}  & \mc{1}{tbd} & \mcc{3}{Ja (wenn auf dem System CAN vorhanden)} \\
\mc{1}{\textbf{Lese/Schreibe NVRAM}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{Ja} \\
\mc{1}{\textbf{Auslesen der Versorgungsspannung}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{n.v.} \\
\mc{1}{\textbf{Auslesen der Temperatur}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{n.v.} & \mc{1}{Ja} \\
\mc{1}{\textbf{LED Ansteuerung}}  & \mc{1}{tbd} & \mc{1}{2 LEDS} & \mc{1}{2 LEDS} & \mc{1}{4 LEDS} \\
\mc{1}{\textbf{Display-Backlight Steuerung}}  & \mc{1}{tbd} & \mcc{3}{Ja (wenn der emPC ein emView ist)} \\
%\mc{1}{\textbf{Lüfter Steuerung}}  & \mc{1}{tbd} & \mcc{1}{n.v.} & \mcc{1}{n.v.} & \mcc{1}{Ja} \\ %TODO wenn einkommentiert ist die tabelle schrott
%\mc{1}{\textbf{Lesen von Systeminformationen}}  & \mc{1}{tbd} & \mc{1}{Ja} & \mc{1}{Ja} & \mc{1}{Ja} \\ %TODO wenn einkommentiert ist die tabelle schrott
\bottomrule
\end{tabularx}
\end{minipage}
\end{table}

\end{document}



Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Das tbd ist in allen Zeilen, ich würde das also in die Caption nehmen. Die ganzen multicolumns sind auch eher schwer zu überblicken. Schau mal hier:
\documentclass[
fontsize=12pt,
BCOR=12mm,
DIV=14,
captions=tableheading
]{scrartcl}
\usepackage{booktabs}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{array}
\newcommand{\mc}[2]{\multicolumn{#1}{>{\setlength{\hsize}{#1\hsize}}X}{#2}}
\newcommand{\mcc}[2]{\multicolumn{#1}{c}{#2}}
\def\gls{}
\newcolumntype{T}{>{\raggedright\arraybackslash}m{.2\textwidth}}
\begin{document}


\begin{table}[hbt]
\renewcommand{\arraystretch}{1.5} %Zeilenabstand
\centering
\caption{Verfügbarkeit der Hardware Funktionen} % Überschrift
\begin{tabular}{TTTT}
\toprule
\textbf{Funktion}                          &                                            & \textbf{Vefügbarkeit} & \\
\cmidrule{2-4}
                                           & \textit{emPC-A500}                        & \textit{emPC-A/iMX6}  & \textit{emPC-Cx+}\\
\midrule
\textbf{Watchdog}                          & Ja                                        & Ja                    & Nur über COM-Express Modul \\
\textbf{CAN-Terminierung}                  & \multicolumn{3}{c}{Ja (wenn auf dem System CAN vorhanden)} \\
\textbf{Lese/Schreibe \gls{NVRAM}}         & Ja                                        & Ja                    & Ja \\
\textbf{Auslesen der Versorgungsspannung}  & Ja                                        & Ja                    & n.v. \\
\textbf{Auslesen der Temperatur}           & Ja                                        & n.v.                  & Ja \\
\textbf{LED Ansteuerung}                   & 2 LEDS                                    & 2 LEDS                & 4 LEDS \\
\textbf{Display-Backlight Steuerung}       & \multicolumn{3}{c}{Ja (wenn der emPC ein emView ist)} \\
\textbf{Lüfter Steuerung}                  & n.v.                                      & {n.v.}                & {Ja} \\ %TODO wenn einkommentiert ist die tabelle schrott
\textbf{Lesen von Systeminformationen}     & Ja                                        & Ja                    & Ja \\ %TODO wenn einkommentiert ist die tabelle schrott
\bottomrule
\end{tabular}
\label{tab_hardware_func}
\end{table}
\end{document}:
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Und noch eine Alternative mit tabularx
\documentclass[
 paper=A4,         % alle weiteren Papierformat einstellbar 
 fontsize=12pt,    % Schriftgröße (12pt, 11pt (Standard)) 
 BCOR12mm,         % Bindekorrektur, bspw. 1 cm 
 DIV14,            % breiter Satzspiegel 
 parskip=half*,    % Absatzformatierung s. scrguide 3.1 
 headsepline,      % Trennline zum Seitenkopf   
 listof=totoc,     % Tabellen & Abbildungsverzeichnis ins Inhaltsverzeichnis       
 footinclude=false,% Fußzeile in die Satzspiegelberechnung einbeziehen  
 headinclude=true, % Kopfzeile in die Satzspiegelberechnung einbeziehen  
 final             % draft beschleunigt die Kompilierung 
] 
{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\usepackage{tabularx}% lädt auch array
\usepackage{booktabs}
\usepackage{ragged2e}


%\newcommand{\mc}[2]{\multicolumn{#1}{>{\setlength{\hsize}{#1\hsize}}X}{#2}}
\newcommand{\mcc}[2]{\multicolumn{#1}{c}{#2}} 
\renewcommand{\arraystretch}{1.5} %Zeilenabstand 

\begin{document} 
\begin{table}[hbt]
  \centering
  \begin{tabularx}{\linewidth}{>{\bfseries\RaggedRight\hspace{0pt}}p{.2\linewidth}
                               c*{3}{>{\RaggedRight\hspace{0pt}}X}} 
    \toprule 
    Funktion & \textbf{Soll/Kann} &\mcc{3}{\textbf{Verfügbarkeit}}   \\ 
    & & \textit{emPC-A500} & \textit{emPC-A/iMX6} & \textit{emPC-Cx+}\\ 
    \midrule 
    Watchdog & tbd& Ja & Ja & Nur über COM-Express Modul\\ 
    CAN-\newline Terminierung & tbd & \mcc{3}{Ja (wenn auf dem System CAN vorhanden)} \\ 
    Lese/Schreibe NVRAM & tbd & Ja & Ja & Ja \\ 
    Auslesen der Versorgungsspannung  & tbd & Ja & Ja & n.\,v. \\ 
    Auslesen der Temperatur  & tbd & Ja &  n.\,v. & Ja \\ 
    LED An\-steuerung  & tbd & 2 LEDS & 2 LEDS & 4 LEDS \\ 
    Display-Backlight Steuerung  & tbd & \mcc{3}{Ja (wenn der emPC ein emView ist)} \\ 
    Lüfter\newline Steuerung  & tbd & n.\,v. & n.\,v. & Ja \\
    Lesen von System\-informationen  & tbd & Ja & Ja & Ja \\
    \bottomrule 
  \end{tabularx} 
\end{table} 
\end{document} 
Gruß
Elke

Bild
Dateianhänge
gl_tx.png
gl_tx.png (27.95 KiB) 2502 mal betrachtet

UserTob
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 5. Mai 2015, 16:20

Beitrag von UserTob »

Erstmal vielen dank für die Resonanz! Ich werde beide Vorschläge gleich morgen ausprobieren.

@Johannes_B: Das tbd --> To be defined --> wollte ich nachträglich noch ändern ;)

Antworten