PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie die zweite Zeile einer Tabelle Vertikal schreiben?



caue
23-01-2008, 23:07
Hallo Forum,
ich bin neu hier und auch neu bei Latex. Obwohl ich ein Handbuch und dieses Forum schon durchsucht habe, konnte ich bisher ein Aspekt der Erstellung einer Tabelle nicht hinbekommen: alle Zellen der zweiten Zeile vertikal zu schreiben. Ich brauche sie vertikal, sonst wird die Tabelle zu breit, da nur die zweite Zeile breiten Inhalt hat.

Minimalbeispiel:
%
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{multirow}

\begin{document}

\begin{table}[h]
\begin{tabular*}{0mm}{l|c|c|c|c|c|c|}
\cline{2-5}
& TA & HD & P & IT\\
\cline{2-5}
& fast immer & oft & die
Hälfte & manchmal \\
\cline{2-5}
2.4.1.4 Durch die freie Softwarebewegung? & & & & \\
\cline{2-5}
2.4.1.5 Durch Lesematerial? ............ & & & & \\
\cline{2-5}
2.4.1.6 Beim GNU/Linux? ............ & & & & \\
\cline{2-5}
\hline
\end{tabular*}
\end{table}

\end{document}
%

Der Text in der linken unsichtbaren Spalte wollte ich eigentlich neben der Tabelle. Das muss ich auch noch hinbekommen, da die Einrückung so nicht stimmt (das ist aber anderes Problem). Ich hoffe, das Beispiel ist verständlich. Ich möchte halt die Wörter "fast immer, oft, die Hälfte, manchmal" vertikal stellen.

Ich freue mich für jede Hilfe und bedanke mich im voraus!

gruesse Caue

bobmalaria
23-01-2008, 23:12
hi,

mit vertikal meinst du um 90° gedreht, oder?

dann sollte \rotatebox{90}{text} funktionieren.


gruß

caue
24-01-2008, 01:13
Ja, genau! 90 Grad gedreht.

Ich habe das Beispiel hier:
http://www.mrunix.de/forums/archive/index.php/t-31272.html

geguckt und meine Tabelle versucht anzupassen. Die Tabelle an sich scheint sich für die 90 Grad ausgerichtet zu haben, aber der Text hat sich nicht gedreht. Ich benutze Debian GNU/Linux und Emacs22 und Evince um die Datei .dvi zu betrachten. Lässt der Text sich hiermit nicht gedreht zeigen? Ich fürchte, ich habe es noch nicht richtig geschrieben, da ich die Folge "\begin{rotate}{Winkel}" und "\end{rotate}" nicht wusste, wo unterbringen:
%
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{multirow}
\usepackage{rotating}
\begin{document}

\begin{table}[h]
\begin{tabular*}{0mm}{l|c|c|c|c|c|c|}
\cline{2-5}
& TA & HD & P & IT\\
\cline{2-5}
& \rotatebox{90}{fast immer} & \rotatebox{90}{oft} & \rotatebox{90}{die
Hälfte} & \rotatebox{90}{manchmal} \\
\cline{2-5}
2.4.1.4 Durch die freie Softwarebewegung? & & & & \\
\cline{2-5}
2.4.1.5 Durch Lesematerial? ............ & & & & \\
\cline{2-5}
2.4.1.6 Beim GNU/Linux? ............ & & & & \\
\cline{2-5}
\hline
\end{tabular*}
\end{table}

\end{document}
%

Danke und Gruß!
caue

edico
24-01-2008, 18:43
Schau Dir den massgeblichen Code an und lass die Nebensächlichkeiten weg, dann geht Dir ein Licht auf:

\documentclass{article}
\usepackage{graphicx}
\begin{document}

%\begin{table}[h]
%\begin{tabular*}{0mm}{l|c|c|c|c|c|c|}
\begin{tabular*}{0mm}{l|c|c|c|c|}
\cline{2-5}
& TA & HD & P & IT \\
\cline{2-5}
& \rotatebox{90}{fast immer} &
\rotatebox{90}{oft} &
\rotatebox{90}{die Hälfte} &
\rotatebox{90}{manchmal} \\
\cline{2-5}
2.4.1.4 Durch die freie Softwarebewegung? & & & & \\
\cline{2-5}
2.4.1.5 Durch Lesematerial? ............ & & & & \\
\cline{2-5}
2.4.1.6 Beim GNU/Linux? ............ & & & & \\
\cline{2-5}
%\hline
\end{tabular*}
%\end{table}

\end{document}

edico

caue
29-01-2008, 21:20
Danke! Ich habe mir mehrmals das ganze angeguckt. Wenn man mit sowas anfängt scheint alles nicht so intuitiv wie nachdem man das Verfahren beherrscht. Wenn ich dein code, edico, ausführe, sieht man, dass die Tabelle an sich Raum schaft für die 90 Grad. Der Text dreht sich aber nicht. Deshalb kann ich nicht ohne weiteres wissen, ob mein Code noch nicht in Ordnung ist oder ob mein System nicht fähig ist, den Text 90 Grad zu drehen. Deshalb frage ich einfach mal: Ist was du mir gepostet hast schon die Lösung oder sollte ich, nachdem "ein Licht auf gehen", auf die Lösung stoßen?

Ich hänge also immer noch bei dieser Frage:
"Die Tabelle an sich scheint sich für die 90 Grad ausgerichtet zu haben, aber der Text hat sich nicht gedreht."

Gruess caue

bobmalaria
29-01-2008, 21:37
hi,

bei mir sieht das so aus wie im anhang. evtl. ist mehrfaches kompilieren notwendig.

gruß

caue
29-01-2008, 22:14
Ja, genau so soll es aussehen! Danke! Der Code ist also richtig und das Problem liegt an meinem System. Jetzt überlege ich, wie ich meinem System beibringen kann, dies auch so zu zeigen, wie der Code es vorsieht.

Danke nochmal und Gruesse!
caue

caue
30-01-2008, 09:26
So, jetzt wird es richtig kompliziert! Die nächste Tabelle, an der ich jetzt bastele, soll wie im Anhang aussehen. Wie mehrere Tabellen so nebeneinander hinbekommen? Stichwörter und Tipps sind dringend gewünscht! Danke!

gruesse caue

bobmalaria
30-01-2008, 12:02
hi,

den rest darfst du selber basteln/verbessern :-)


\tiny
\begin{tabular*}{0mm}{r|c|c|c|c|@{}p{1pt}@{}|c|c|c |c|@{}p{1pt}@{}|c|c|c|c|@{}p{1pt}@{}|c|c|c|c|}

\cline{2-5} \cline{7-10} \cline{12-15} \cline{17-20}
& \multicolumn{4}{|c|}{TA} & & \multicolumn{4}{|c|}{HD}& & \multicolumn{4}{|c|}{P}& & \multicolumn{4}{|c|}{BD} \\
\cline{2-5} \cline{7-10} \cline{12-15} \cline{17-20}
& \rotatebox{90}{fast immer} & \rotatebox{90}{oft} & \rotatebox{90}{die Hälfte} & \rotatebox{90}{manchmal} & & \rotatebox{90}{fast immer} & \rotatebox{90}{oft} & \rotatebox{90}{die Hälfte} & \rotatebox{90}{manchmal}& & \rotatebox{90}{fast immer} & \rotatebox{90}{oft} & \rotatebox{90}{die Hälfte} & \rotatebox{90}{manchmal}& & \rotatebox{90}{fast immer} & \rotatebox{90}{oft} & \rotatebox{90}{die Hälfte} & \rotatebox{90}{manchmal} \\
\cline{2-5} \cline{7-10} \cline{12-15} \cline{17-20}
3.1.1 Mit den Kindern: 3.1.1.1 Bis 10 Jahren& & & & &&&&&&&&&&&&&&&\\\cline{2-5} \cline{7-10} \cline{12-15} \cline{17-20}
3.1.1.2 Jugendlichen & & & & &&&&&&&&&&&&&&&\\\cline{2-5} \cline{7-10} \cline{12-15} \cline{17-20}

\end{tabular*}

edico
30-01-2008, 12:12
So fragt man Leute aus ...
Schau Dir mal einschlägige Literatur zu Tabellen an (ist hier vielfach zitiert worden)... es hilft Dir mit Sicherheit.
Und es wäre schön zu erkennen, dass Du die Vorschläge auch mal weiterentwickelst, um zu lernen, und nicht nur Dich dadurch produzierst, dass Du konsumierst ...

Eine Lösung zur Weiterentwicklung könnte so aussehen:

\documentclass{article}
\usepackage{pdflscape}
\usepackage{tabularx,array,booktabs,calc,multirow}

\begin{document}
here comes the text

\begin{landscape}
\begin{tabularx}{\linewidth}{X%
*{4}{|p{.04\linewidth-2\tabcolsep}}%
*{4}{|p{.04\linewidth-2\tabcolsep}}|%
}
\toprule
\multirow{2}{\linewidth}{In welchen privaten Lebenssituationen benutzen Sie diese Spracharten mit Sprechern?}
& \multicolumn{4}{c|}{TA}
& \multicolumn{4}{c|}{HD}\\
\cline{2-5}\cline{6-9}
&
\rotatebox{90}{fast immer } &
\rotatebox{90}{oft } &
\rotatebox{90}{die Hälfte } &
\rotatebox{90}{manchmal } &
\rotatebox{90}{fast immer } &
\rotatebox{90}{oft } &
\rotatebox{90}{die Hälfte } &
\rotatebox{90}{manchmal } \\
\cline{2-5}\cline{6-9}
1. Durch die freie Softwarebewegung? \dotfill & & & & & & & & \\
\cline{2-5}\cline{6-9}
2. Durch Lesematerial? \dotfill & & & & & & & & \\
\cline{2-5}\cline{6-9}
3. Beim GNU/Linux? \dotfill & & & & & & & & \\
\bottomrule
\end{tabularx}
\end{landscape}

here goes the text
\end{document}

edico

caue
30-01-2008, 12:25
Spitze! Das wird mir sehr hilfreich sein! Vielen Dank!

Gruesse caue