Spaltenbreite vergrößern

Tabellen und Grafiken erstellen und anordnen


pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Spaltenbreite vergrößern

Beitrag von pauabaer »

Hallo,

ich hab folgende Tabelle vorbereitet.
\documentclass{scrreprt} 
\usepackage[ngerman]{babel} 
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}   

\usepackage{dcolumn}
\usepackage{booktabs}
\usepackage{blindtext}
\usepackage{array}
\usepackage{tabularx}
\usepackage{ragged2e}
\newcommand{\mcl}[1]{\multicolumn{1}{l}{#1}}



\begin{document}

\blindtext

\begin{table}%
\centering
\caption{Caption}
\label{label}
\begin{tabular}{rc}
\textbf{Tatigkeitsfeld} & \textbf{Anzahl der Arbeitskrafte}\\

\mcl{Schalarbeiten} &  \\

Stutzen & 2 \\

 
\end{tabular} 
\end{table}

\end{document}
Allerdings ist mir die linke Spalte zu klein und würde sie gerne etwas vergrößern, sodass die links- und rechtsbündigen Einträge auch richtig zur Geltung kommen.

Habs schon mit tabularx versucht und mir einen neuen Spaltentyp definiert. Allerdings ohne Erfolg. Deshalb wollte ich fragen ob es eine einfache Lösung gibt meine erste Spalte auf eine bestimmte Größe zu fixieren?

Gruß
pauabaer

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Re: Spaltenbreite vergrößern

Beitrag von Bartman »

pauabaer hat geschrieben:Deshalb wollte ich fragen ob es eine einfache Lösung gibt meine erste Spalte auf eine bestimmte Größe zu fixieren?
Es dürften im Unterforum für "Tabellen und Grafiken" mehrere Beispiele zu finden sein, in denen mithilfe der p-Spalte eine bestimmte Größe eingestellt wird.

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Re: Spaltenbreite vergrößern

Beitrag von pauabaer »

Bartman hat geschrieben:Es dürften im Unterforum für "Tabellen und Grafiken" mehrere Beispiele zu finden sein, in denen mithilfe der p-Spalte eine bestimmte Größe eingestellt wird.
Ich habe auch gefunden wie ich die Spaltenbreite bestimmen kann. Soweit kein Problem mehr. Nur weiß ich nicht, wie ich eine einzelne Zeile anders ausrichten kann. In meinem Fall linksbündig.

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

Re: Spaltenbreite vergrößern

Beitrag von esdd »

pauabaer hat geschrieben: Ich habe auch gefunden wie ich die Spaltenbreite bestimmen kann. Soweit kein Problem mehr. Nur weiß ich nicht, wie ich eine einzelne Zeile anders ausrichten kann. In meinem Fall linksbündig.
Linksbündig ist doch die voreingestellte Ausrichtung von p-Spalten? Vielleicht fügst Du Dein obiges Minimalbeispiel noch mal ein, aber angepasst an die neue Fragestellung.

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Du hast natürlich Recht. Linksbündig ist Standard.

Hier meine Tabelle:
\begin{table}[h!]
	\captionsetup{singlelinecheck=off}
	\caption[Unterscheidung der Produktionsfaktoren]{Unterscheidung der Produktionsfaktoren}
	\label{tbl:Bestandteile}
	\small
	\setlength\extrarowheight{2pt}
	\begin{tabularx}{\textwidth}{p{7.5cm}p{7.5cm}}
		\toprule
		\textbf{elementare Faktoren} & \textbf{dispositive Faktoren} \\
		\midrule
		Arbeit &	Planung \\
		Betriebsmittel &	Steuerung \\				
		Stoffe & Kontrolle\\
				& Organisation\\
				& Kommunikation\\
		\bottomrule
	\end{tabularx}
\end{table}
Wie erreiche ich jetzt, dass einzelne Zeilen rechtsbündig ausgerichtet werden können? Also Beispielsweise die erste Zeile mit den "Faktoren"?

Gruß
pauabaer

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

Beitrag von esdd »

Wenn Du tabularx verwendest, sollte mindestens eine der Spalten den Typ X haben. Falls Deine beiden Spalten beide gleich breit sein sollen, verwende zwei X Spalten. Dann wird die vorgegebene Breite auf beide gleich verteilt.

Die Ausrichtung einzelner Zellen kannst Du, wie in Deinem Eingangsbeispiel, durch Änderung des Spaltentyps über \multicolumn anpassen. Oder Du verwendest in der Zelle \raggedleft. Wenn Du die Zeilen mit \\ abschließt, muss in der letzten Spalte \arraybackslash ergänzt werden.
\documentclass{scrreprt} 
\usepackage[ngerman]{babel} 
\usepackage[latin1]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage{booktabs} 
\usepackage{tabularx}% lädt auch array 
\usepackage{blindtext}
\usepackage{caption}
\begin{document} 
\blindtext 
\begin{table}[h!] 
    \captionsetup{singlelinecheck=off} 
    \caption[Unterscheidung der Produktionsfaktoren]{Unterscheidung der Produktionsfaktoren} 
    \label{tbl:Bestandteile} 
    \small 
    \setlength\extrarowheight{2pt} 
    \begin{tabularx}{\textwidth}{XX} 
       \toprule 
       \textbf{elementare Faktoren} & \textbf{dispositive Faktoren} \\ 
       \midrule 
       Arbeit &   Planung \\ 
       Betriebsmittel &   Steuerung \\             
       \multicolumn{1}{r}{Stoffe} & Kontrolle\\ 
             & Organisation\\ 
             & Kommunikation\\
       \raggedleft Stoffe & \raggedleft\arraybackslash Kontrolle\\ 
             & Organisation\\ 
             & Kommunikation\\
       \bottomrule 
    \end{tabularx} 
\end{table} 
\end{document}

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Vielen Dank!
Kurze Frage noch. Warum sollte mind. eine der Spalten den Typ X haben? Und wie bekomme ich es hin, dass die Tabelle nicht auf die gesamte Textbreite gestreckt wird?
Zuletzt geändert von pauabaer am Mi 1. Jun 2016, 13:27, insgesamt 1-mal geändert.

DADABBI

Beitrag von DADABBI »

Weil die angegebene Tabellenbreite dadurch erreicht wird, dass die Breiten der X-Spalten angepasst wird. Ohne X-Spalten kann tabularx die Restbreite nicht verteilen und damit hat man ggf. allenfalls entsprechend lange horizontale Linien aber nicht wirklich eine entsprechend breite Tabelle. Siehe auch »Unterschied zwischen: tabular, tabularx und tabulary?« und natürlich die [d]tabularx[/d]-Anleitung.

BTW: Der Status "Rückfrage" ist (potentiellen) Helfern vorbehalten. Bitte informiere dich über die Bedeutung.

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Ok, danke.
Wenn ich die Tabelle jetzt aber nicht auf die ganze Textbreite bringen möchte, wie gehe ich dann vor?

DADABBI

Beitrag von DADABBI »

Dann gibst du bei \begin{tabularx} als erstes Argument statt \textwidth natürlich die Breite an, die du haben willst. :roll:

Antworten