PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelle - Text abgeschnitten, Tabelle zu breit



Brinkley
11-10-2006, 10:18
Hallo,

habe zwar schon hier im Forum gesucht, aber nicht wirklich eine Lösung gefunden ... oder vielleicht haperts auch bei meinem Verständnis :confused:

Jedenfalls habe ich eine Tabelle mit 4 Spalten und 6 Zeilen erstellt. Die Tabelle soll eigentlich so breit wie der restliche Text sein, nämlich 16,5 cm. Der Text in der 1. Spalte soll linksbünding sein, während der in den anderen drei Spalten zentriert sein soll. Mein Problem ist jetzt, daß zum einen bei einer Definition der Spaltenbreiten (1. Spalte: 7,5 cm, 2.-4. Spalte: je 3 cm) die Tabelle zu weit hinausragt, also nicht eine Breite von 16,5 cm hat. Selbst wenn ich die Spaltenbreiten für die 2.-4. Spalte auf 2,5 cm verkleinere bleibt das Problem bestehen. Hinzu kommt noch das der Text der Überschriften in der 3. und 4. Spalte trotz p-Spalte nicht automatisch umgebrochen wird. Im Gegenteil ... in der Spalte 3 wird er einfach abgeschnitten und in der Spalte 4 ragt er über die Spalte/Tabelle hinaus (siehe angefügte Datei). Ich habe das auch schon mit Hilfe des Befehls \newline ausprobiert, aber dann ist der Text nicht mehr zentriert.

Hier mal ein Minimalbeispiel:


\documentclass[a4paper,twoside,12pt,openright,bibtotoc]{scrreprt}
\usepackage{subfigure,multicol,blindtext}
\usepackage{subfig}

\usepackage[inner=2.5cm,outer=2cm,top=2cm,bottom=2cm,includehe adfoot]{geometry}

\usepackage{setspace}
\setstretch{1.25}

\usepackage{fancyhdr}
\usepackage[hang]{footmisc}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[RO,LE]{\footnotesize\nouppercase{\leftmark}}
\renewcommand{\headrulewidth}{0.25pt}
\fancyfoot[RO,LE]{\thepage}
\renewcommand{\footrulewidth}{0pt}

\renewcommand{\familydefault}{\sfdefault}
\usepackage{helvet}

\usepackage{xcolor}

\setlength{\parindent}{0cm}

\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{array}
\usepackage{colortbl}
\usepackage[german]{rccol}
\renewcommand{\arraystretch}{2.0}

\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}

\usepackage{bibgerm}
\usepackage{multibbl,url}
\newbibliography{lit}
\newbibliography{normen}

\newif\ifpdf
\ifx\pdfoutput\undefined
\pdffalse
\else
\pdfoutput=1
\pdftrue
\fi

\ifpdf
\usepackage[pdftex]{graphicx}
\else
\usepackage[dvips]{graphicx}
\fi

\usepackage[bf]{caption}
\renewcommand{\captionfont}{\footnotesize\raggedri ght}
\addto\captionsngerman{
\renewcommand{\figurename}{Abb.}
\renewcommand{\tablename}{Tab.}
}

\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{chngcntr}
\counterwithout{equation}{chapter}

\begin{document}

Aktivität des Menschen und seiner Bekleidung ab. Doch je aktiver er ist, desto mehr Wärme wird abgegeben. Tab. 3.1 gibt einen kurzen Überblick bezüglich der Wärmeabgabe, der Wasserdampfabgabe sowie des Kalorienverbrauches im Zusammenhang mit dem Grad der Aktivität dargestellt.
\begin{table}[!hp]
{\footnotesize
\centering
\begin{tabularx}{\textwidth}
{
|>{\raggedright\arraybackslash}p{7.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}|
}
\hline
\cellcolor{lightgray} Art der Tätigkeit
& \cellcolor{lightgray} Gesamte Wärmeabgabe in W
& \cellcolor{lightgray} Wasserdampfabgabe in g/h
& \cellcolor{lightgray} Kalorienverbrauch in kJ/Tag \\
\hline
Schlafen, ruhiges Liegen
& 65-85
& 20-35
& 7500 \\
\hline
Sitzende Tätigkeit, z. B. Lesen, Schreiben
& 85-125
& 25-45
& 8000 \\
\hline
Leichte Tätigkeit, z. B. Büroarbeiten
& 125-175
& 45-65
& 10500 \\
\hline
Mäßig schwere körperliche Tätigkeit
&175-225
&65-105
&12000 \\
\hline
Schwere körperliche Tätigkeit, Sportaktivität
& 360-500
& 160-300
& 15000 \\
\hline
\end{tabularx}
}
\caption{Wärme-, Wasserdampfabgabe und Kalorienverbrauch eines Erwachsenen bei verschiedenen Tätigkeiten}
\label{tab:WärmeWasserdampfabgabeUndKalorienverbra uchEinesErwachsenenBeiVerschiedenenTätigkeiten}
\end{table}

\end{document}

Kann mir vielleicht jemand helfen?

RedCloud
11-10-2006, 10:51
Jedenfalls habe ich eine Tabelle mit 4 Spalten und 6 Zeilen erstellt. Die Tabelle soll eigentlich so breit wie der restliche Text sein, nämlich 16,5 cm. Der Text in der 1. Spalte soll linksbünding sein, während der in den anderen drei Spalten zentriert sein soll. Mein Problem ist jetzt, daß zum einen bei einer Definition der Spaltenbreiten (1. Spalte: 7,5 cm, 2.-4. Spalte: je 3 cm) die Tabelle zu weit hinausragt, also nicht eine Breite von 16,5 cm hat. Selbst wenn ich die Spaltenbreiten für die 2.-4. Spalte auf 2,5 cm verkleinere bleibt das Problem bestehen. Hinzu kommt noch das der Text der Überschriften in der 3. und 4. Spalte trotz p-Spalte nicht automatisch umgebrochen wird. Im Gegenteil ... in der Spalte 3 wird er einfach abgeschnitten und in der Spalte 4 ragt er über die Spalte/Tabelle hinaus (siehe angefügte Datei). Ich habe das auch schon mit Hilfe des Befehls \newline ausprobiert, aber dann ist der Text nicht mehr zentriert.

Hier mal ein Minimalbeispiel:


\documentclass[a4paper,twoside,12pt,openright,bibtotoc]{scrreprt}
\usepackage{subfigure,multicol,blindtext}
\usepackage{subfig}



subfigure rausschmeißen! ist doch durch subfig verbessert





\usepackage[inner=2.5cm,outer=2cm,top=2cm,bottom=2cm,includehe adfoot]{geometry}

\usepackage{setspace}
\setstretch{1.25}

\usepackage{fancyhdr}
\usepackage[hang]{footmisc}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[RO,LE]{\footnotesize\nouppercase{\leftmark}}
\renewcommand{\headrulewidth}{0.25pt}
\fancyfoot[RO,LE]{\thepage}
\renewcommand{\footrulewidth}{0pt}

\renewcommand{\familydefault}{\sfdefault}
\usepackage{helvet}

\usepackage{xcolor}

\setlength{\parindent}{0cm}

\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{array}
\usepackage{colortbl}
\usepackage[german]{rccol}
\renewcommand{\arraystretch}{2.0}

\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}

\usepackage{bibgerm}
\usepackage{multibbl,url}
\newbibliography{lit}
\newbibliography{normen}




den ifpdf-Kram komplett rausnehmen, das braucht man nur in Ausnahmefällen und dafür dann _nur_



\usepackage{graphicx}






\begin{tabularx}{\textwidth}
{
|>{\raggedright\arraybackslash}p{7.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}|
}



Wenn du schon tabularx verwendest, dann nimm wenigstens auch eine X-Spalte:


\begin{tabularx}{\textwidth}
{
|>{\raggedright\arraybackslash}X
...


rc

Brinkley
11-10-2006, 11:24
den ifpdf-Kram komplett rausnehmen, das braucht man nur in Ausnahmefällen und dafür dann _nur_


\usepackage{graphicx}
Da ich \usepackage{graphicx} benutze, kann ich es nicht löschen


Wenn du schon tabularx verwendest, dann nimm wenigstens auch eine X-Spalte:

\begin{tabularx}{\textwidth}
{
|>{\raggedright\arraybackslash}X
Danke, hat geklappt ... zumindest hat die Tabelle jetzt die richtige Breite.

Das Problem mit dem abgeschnittenen bzw. herausragenden Text bleibt allerdings bestehen.

RedCloud
11-10-2006, 11:52
Da ich \usepackage{graphicx} benutze, kann ich es nicht löschen

das sollst du ja auch drin lassen! Aber den ganzen \ifpdf-Kram rausnehmen ...



Danke, hat geklappt ... zumindest hat die Tabelle jetzt die richtige Breite.

Das Problem mit dem abgeschnittenen bzw. herausragenden Text bleibt allerdings bestehen.

hm, habe ich gar nicht gesehen ... muss ich nochmal gucken.

rc

Brinkley
11-10-2006, 14:04
das sollst du ja auch drin lassen! Aber den ganzen \ifpdf-Kram rausnehmen ...
Habe ich ja versucht, aber dann war anstelle der Grafiken der Code zu sehen.

Brinkley
20-10-2006, 13:18
Dachte, ich bump mal dieses Thema, da das Problem mit dem abgeschnittenen bzw. herausragenden Text immer noch besteht.

Hier noch mal ein Minimalbeispiel:


%Papierformat, Layout, Schriftgröße, Art des Dokumentes
\documentclass[a4paper,twoside,12pt,openright,bibtotoc]{scrreprt}
\usepackage{multicol,blindtext}
\usepackage{subfig}

%Einstellungen der Seitenränder
\usepackage[inner=2.5cm,outer=2cm,top=2cm,bottom=2cm,includehe adfoot]{geometry}

%Zeilenabstand
\usepackage{setspace}

% Zeilenabstand von 125%
\setstretch{1.25}

%Kopf- und Fußzeilen
\usepackage{fancyhdr}
\usepackage[hang]{footmisc} % Für Abstand zwischen der Fußnotenzahl und dem Fußnotentext
\pagestyle{fancy}
\fancyhf{}
\fancyhead[RO,LE]{\footnotesize\nouppercase{\leftmark}} %Kopfzeile: Text in kleinerer Schrift rechts bzw. außen
\renewcommand{\headrulewidth}{0.25pt} %Kopfzeile: Stärke der Linie
\fancyfoot[RO,LE]{\thepage} %Fußzeile rechts bzw. außen
\renewcommand{\footrulewidth}{0pt} %Fußzeile: Stärke der Linie

%Führt ganzes Dokument in Serifenloser Schrift aus
\renewcommand{\familydefault}{\sfdefault}

%Benutzt Helvetia als Serifenlose Schrift
\usepackage{helvet}

%Formeln farblich hinterlegen
\usepackage{xcolor}

%Text zu Beginn nicht eingerückt
\setlength{\parindent}{0cm}

%Tabellen
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{longtable} % Für Tabellen, die eine Seite überschreiten
\usepackage{array}
\usepackage{colortbl} % Einzelne Zellen einer Tabelle farbiger Hintergrund
\usepackage[german]{rccol} % Dezimalstellen in Tabellen ausrichten
\renewcommand{\arraystretch}{2.0}

% Deutsche Anpassungen
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}

% Literatur- und Normenverzeichnis
\usepackage{bibgerm}
\usepackage{multibbl,url}
\usepackage{cite}
\newbibliography{lit}
\newbibliography{normen}

% Normales LaTeX oder pdfLaTeX?
% An einigen Stellen Kompatibilität zwischen LaTeX und pdfLaTeX herstellen
\newif\ifpdf
\ifx\pdfoutput\undefined
\pdffalse
\else
\pdfoutput=1
\pdftrue
\fi

\usepackage{graphicx}

\renewcommand{\captionfont}{\footnotesize\raggedri ght} % Bildunterschriften linksbündig
\addto\captionsngerman{
\renewcommand{\figurename}{Abb.} % Abbildung in Abb. umbenennen
\renewcommand{\tablename}{Tab.} % Tabelle in Tab. umbenennen
}

% Packages für Formeln
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}

% Einfachere Form der Formelnummerierung
\usepackage{chngcntr}
\counterwithout{equation}{chapter}

\begin{document}

\begin{table}[!hp]
{\footnotesize
\centering
\begin{tabularx}{\textwidth}
{
|>{\raggedright\arraybackslash}X
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}|
}
\hline
\cellcolor{lightgray} Art der Tätigkeit
& \cellcolor{lightgray} Gesamte Wärmeabgabe in W
& \cellcolor{lightgray} Wasserdampfabgabe in g/h
& \cellcolor{lightgray} Kalorienverbrauch in kJ/Tag \\
\hline
Schlafen, ruhiges Liegen
& 65-85
& 20-35
& 7500 \\
\hline
Sitzende Tätigkeit, z. B. Lesen, Schreiben
& 85-125
& 25-45
& 8000 \\
\hline
Leichte Tätigkeit, z. B. Büroarbeiten
& 125-175
& 45-65
& 10500 \\
\hline
Mäßig schwere körperliche Tätigkeit
&175-225
&65-105
&12000 \\
\hline
Schwere körperliche Tätigkeit, Sportaktivität
& 360-500
& 160-300
& 15000 \\
\hline
\end{tabularx}
}
\caption{Wärme-, Wasserdampfabgabe und Kalorienverbrauch eines Erwachsenen bei verschiedenen Tätigkeiten}
\label{tab:WärmeWasserdampfabgabeUndKalorienverbra uchEinesErwachsenenBeiVerschiedenenTätigkeiten}
\end{table}

\clearpage

\begin{table}[!hp]
{\footnotesize
\centering
\begin{tabularx}{\textwidth}
{
|>{\centering\arraybackslash}p{2cm}
|>{\centering\arraybackslash}X
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}
|>{\centering\arraybackslash}p{2.5cm}|
}
\hline
\cellcolor{lightgray} Verhältnis $A/V_e$
& \multicolumn{3}{c|}{Jahres-Primärenergiebedarf}
& \multicolumn{2}{c|}{Spezifischer, auf die wärmeübertragende Umfassungsfläche bezogener Transmissionswärmeverlust} \\
\cline{2-6}
\cellcolor{lightgray}
& \multicolumn{2}{c|}{$Q_p$'' in kWh/(m$^2$a) bezogen auf die Gebäudenutzfläche}
& \cellcolor{lightgray} $Q_p$' in kWh/(m$^2$a) bezogen auf das beheizte Gebäudevolumen
& \multicolumn{2}{c|}{$H_T$' in W/(m$^2$K)} \\
\cline{2-6}
\cellcolor{lightgray}
& \cellcolor{lightgray} Wohngebäude außer solchen nach Spalte 3
& \cellcolor{lightgray} Wohngebäude mit überwiegender Warmwasserbereitung aus elektrischem Strom
& \cellcolor{lightgray} andere Gebäude
& \cellcolor{lightgray} Nichtwohngebäude mit einem Fensterflächenanteil $\leq$ 30 \% und Wohngebäude
& \cellcolor{lightgray} Nichtwohngebäude mit einem Fensterflächenanteil > 30 \% \\
\hline
\cellcolor{lightgray} 1
& \cellcolor{lightgray} 2
& \cellcolor{lightgray} 3
& \cellcolor{lightgray} 4
& \cellcolor{lightgray} 5
& \cellcolor{lightgray} 6 \\
\hline
$\leq$ 0,20 & 66,00+2600/(100+$A_N$) & 88,00 & 14,72 & 1,05 & 1,55 \\
\hline
0,30 & 73,53+2600/(100+$A_N$) & 95,53 & 17,13 & 0,80 & 1,15 \\
\hline
0,40 & 81,06+2600/(100+$A_N$) & 103,06 & 19,54 & 0,68 & 0,95 \\
\hline
0,50 & 88,58+2600/(100+$A_N$) & 110,58 & 21,95 & 0,60 & 0,95 \\
\hline
0,60 & 96,11+2600/(100+$A_N$) & 118,11 & 24,36 & 0,55 & 0,75 \\
\hline
0,70 & 103,64+2600/(100+$A_N$) & 125,64 & 26,77 & 0,51 & 0,69 \\
\hline
0,80 & 111,17+2600/(100+$A_N$) & 133,17 & 29,18 & 0,49 & 0,65 \\
\hline
0,90 & 118,70+2600/(100+$A_N$) & 140,70 & 31,59 & 0,47 & 0,62 \\
\hline
1,00 & 126,23+2600/(100+$A_N$) & 148,23 & 34,00 & 0,45 & 0,59 \\
\hline
$\geq$ 1,05 & 130,00+2600/(100+$A_N$) & 152,00 & 35,21 & 0,44 & 0,58 \\
\hline
\end{tabularx}
}
\caption{Neubauten mit normalen Innentemperaturen: Höchstwerte des auf die Gebäudenutzfläche und des auf das beheizte Gebäudevolumen bezogenen Jahres-Primärenergiebedarfs und des spezifischen, auf die wärmeübertragende Umfassungsfläche bezognenen Transmissionswärmeverlusts in Abhängigkeit vom Verhältnis $A/V_{e}$}
\label{tab:Höchstwerte}
\end{table}\\

\end{document}

Anbei auch die Log-Datei.

Nebenbei, weiß jemand, wie man die multicolumn-Zellen farbig machen kann? Mit cellcolor funktioniert es bei mir nämlich nicht.

sofa-surfer
20-10-2006, 13:34
Jedenfalls habe ich eine Tabelle mit 4 Spalten und 6 Zeilen erstellt. Die Tabelle soll eigentlich so breit wie der restliche Text sein, nämlich 16,5 cm. Der Text in der 1. Spalte soll linksbünding sein, während der in den anderen drei Spalten zentriert sein soll. Mein Problem ist jetzt, daß zum einen bei einer Definition der Spaltenbreiten (1. Spalte: 7,5 cm, 2.-4. Spalte: je 3 cm) die Tabelle zu weit hinausragt, also nicht eine Breite von 16,5 cm hat. Selbst wenn ich die Spaltenbreiten für die 2.-4. Spalte auf 2,5 cm verkleinere bleibt das Problem bestehen.


Zu der Breite die man dort angibt, muss man zusätzlich pro Spalte noch 2x\tabcolsep dazu rechnen. Deswegen ist es klar, dass die Tabelle über den Rand steht, wenn du als reine Nutzbreite die Textbreite angibst. Da ist also entweder rechnen angesagt (z.B. mit dem calc-Package) oder du nimmst eine Tabelle, für die du die Gesamtbreite vorgeben kannst (z.B. mit dem tabularx-Package).



Hinzu kommt noch das der Text der Überschriften in der 3. und 4. Spalte trotz p-Spalte nicht automatisch umgebrochen wird. Im Gegenteil ... in der Spalte 3 wird er einfach abgeschnitten und in der Spalte 4 ragt er über die Spalte/Tabelle hinaus (siehe angefügte Datei). Ich habe das auch schon mit Hilfe des Befehls \newline ausprobiert, aber dann ist der Text nicht mehr zentriert.


Du kannst doch einfach manuell trennen:
Wasserdampf\-abgabe in g/h

Das sollte in deinem Fall hier reichen. Dass in der einen Spalte der Text verdeckt wird liegt wohl an der farbigen Zelle ...

Matthias

sofa-surfer
20-10-2006, 13:41
Und was farbige Multicolumns angeht:


\documentclass{article}
\usepackage{xcolor}
\usepackage{colortbl}


\begin{document}


\begin{tabular}{cc}
bla & blub \\
\multicolumn{2}{c}{\cellcolor{lightgray}Eine Multicolumn}
\end{tabular}

\end{document}

... funktioniert bei mir.

Matthias

Brinkley
20-10-2006, 19:59
Und was farbige Multicolumns angeht:


\multicolumn{2}{c}{\cellcolor{lightgray}Eine Multicolumn}

... funktioniert bei mir.
Aha ... deshalb ... ich hatte \cellcolor{lightgray} immer vor \multicolumn geschrieben.

Danke.

Brinkley
20-10-2006, 20:06
Zu der Breite die man dort angibt, muss man zusätzlich pro Spalte noch 2x\tabcolsep dazu rechnen. Deswegen ist es klar, dass die Tabelle über den Rand steht, wenn du als reine Nutzbreite die Textbreite angibst. Da ist also entweder rechnen angesagt (z.B. mit dem calc-Package) oder du nimmst eine Tabelle, für die du die Gesamtbreite vorgeben kannst (z.B. mit dem tabularx-Package).
Das tabularx-Paket benutze ich ja schon. Deshalb hatte ich zuletzt immer eine der Spalten als X ohne feste Breite definiert. Trotzem geht die 2. Tabelle in meinem obigen Beispiel über den Rand hinaus.


Du kannst doch einfach manuell trennen:
Wasserdampf\-abgabe in g/h

Das sollte in deinem Fall hier reichen.
Bei der 1. Tabelle hat das funktioniert. Bei der 2. leider nicht :confused:

Brinkley
22-10-2006, 17:40
Wäre wirklich nett, wenn mir jemand bei dem Problem mit meiner 2. Tabelle helfen könnte.

Habe ich vielleicht vergessen irgendein Paket in die Präambel zu schreiben, oder so?

rais
22-10-2006, 18:49
vgl mal http://mrunix.de/forums/showthread.php?t=42880&highlight=multicolumn+tabularx, Post 7: die Sache mit \multicolumn und tabularx (kannst Du auch in Deiner tabularx-Doku nachlesen, da einfach nach multicolumn suchen)...
Macht Dein erster \multicolumn in Tabelle2 nicht genau das?
MfG,

Brinkley
26-10-2006, 14:00
vgl mal http://mrunix.de/forums/showthread.php?t=42880&highlight=multicolumn+tabularx, Post 7: die Sache mit \multicolumn und tabularx (kannst Du auch in Deiner tabularx-Doku nachlesen, da einfach nach multicolumn suchen)...
Danke für den Tip.

Die Tabelle sieht jetzt super aus ... Das einzige Problem, welches es jetzt jedoch gibt, ist, daß alle Tabellen des Kapitels nun an das Ende geschoben wurden ... :confused:

Liegt das vielleicht daran, daß ich die anderen Tabellen, in denen das X als Column-Definition vorkommt, noch nicht überarbeitet habe?