Spalten schmaler bzw. zentrier < LaTeX < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 14:46 Sa 25.07.2009 | Autor: | Bastiane |
Hallo zusammen!
Mit folgendem Code
1: |
| 2: | \begin{table}
| 3: | \centering \begin{tabular}[h]{p{1.5cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}}
| 4: | Proband & 0° und 180° & 22,5° und 202,5° & 45° und 225° & 67,5° und 247,5° & 90° und 270° & 112,5° und 292,5° & 135° und 315° & 157,5° und 337,5°\\
| 5: | \hline
| 6: | 1& 21,667 &15& 20& 20& 100& 0& 6,667 &6,667\\
| 7: | 2& 90& 83,333 &66,667 &63,333 &93,333& 70& 76,667 &83,333\\
| 8: | 3& 100& 100& 95& 90& 83,333 &83,333 &100& 100\\
| 9: | 4& 50& 20& 10& 16,667& 70& 31,667 &28,333 &31,667\\
| 10: | 5& 70& 83,333& 50& 80& 70& 60& 76,667& 100\\
| 11: | 6& 93,333& 93,333& 100& 81,667& 80& 100& 93,333& 100\\
| 12: | 7& 46,667& 33,333& 13,333& 26,667& 85& 60& 40& 50\\
| 13: | 8& 50 &56,667& 30& 23,333& 93,333& 23,333& 23,333& 46,667\\
| 14: | 9& 100 &93,333& 66,667& 53,333& 90& 66,667& 100& 100\\
| 15: | 10& 100& 90& 70& 90& 100& 100& 90& 100\\
| 16: | 11& 85& 80& 55& 43,333 &90& 83,333& 93,333& 83,333\\
| 17: | 12& 93,333& 86,667& 90& 85& 100&100&100& 100\\
| 18: | \hline
| 19: | Mittelwert& 75& 69,583& 55,556& 56,111& 87,917& 64,861& 69,028& 75,139
| 20: | \end{tabular}
| 21: | \caption{Mittelwerte über die letzten 5 Episoden; richtungsspezifisch}
| 22: | \label{tab:MittelwerteÜberDieLetzten5EpisodenRichtungsspezifisch}
| 23: | \end{table}
|
habe ich diese wunderschöne Tabelle gezaubert:
[Dateianhang nicht öffentlich]
Nun würde ich allerdings die Spalten gerne zentriert oder vllt auch lieber rechtsbündig, evtl. sogar in der ersten Zeile zentriert und den Rest rechtsbündig oder so machen. Das normale {c|c|c|c|c|c|c|c|c} funkioniert nicht, jedenfalls habe ich keine Stelle gefunden, an der es funktioniert, da ich diese p{1cm} als Spaltenbreitenangabe da stehen habe. Anfangs hatte ich das nicht, da hatte ich nur den Befehl {c|c|c|c|c|c|c|c|c}, was dazu führte, dass die Tabelle von der Breite her nicht ganz auf die Seite passte, da der Text in den ersten Zeilen zu breit war.
Einen manuellen Zeilenumbruch habe ich nicht hinbekommen. Falls jemand weiß, wie das in meiner Tabelle funktionieren würde, sodass dann auch noch das Zentrierte erhalten bleibt, kann er mir das gerne sagen. Ansonsten wüsste ich gerne, wie ich in obiger Tabelle den Spalteninhalt jetzt zentrieren kann, oder um jeden einzelnen Inhalt \center{...} zu schreiben.
Ach, und vielleicht weiß auch noch jemand, wie ich das "Proband" links oben eine Zeile tiefer bekomme? Dass das bzgl. der Höhe in der Mitte der Spalte steht?
Viele Grüße
Bastiane
Dateianhänge: Anhang Nr. 1 (Typ: png) [nicht öffentlich]
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:57 Sa 25.07.2009 | Autor: | rainerS |
Hallo Bastiane!
> Hallo zusammen!
>
> Mit folgendem Code
>
> 1: |
| 2: | > [mm]\begin{table}
| 3: | \centering \begin{tabular}[h]{p{1.5cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}}
| 4: | Proband & 0° und 180° & 22,5° und 202,5° & 45° und 225° & 67,5° und 247,5° & 90° und 270° & 112,5° und 292,5° & 135° und 315° & 157,5° und 337,5°\\
| 5: | \hline
| 6: | 1& 21,667 &15& 20& 20& 100& 0& 6,667 &6,667\\
| 7: | 2& 90& 83,333 &66,667 &63,333 &93,333& 70& 76,667 &83,333\\
| 8: | 3& 100& 100& 95& 90& 83,333 &83,333 &100& 100\\
| 9: | 4& 50& 20& 10& 16,667& 70& 31,667 &28,333 &31,667\\
| 10: | 5& 70& 83,333& 50& 80& 70& 60& 76,667& 100\\
| 11: | 6& 93,333& 93,333& 100& 81,667& 80& 100& 93,333& 100\\
| 12: | 7& 46,667& 33,333& 13,333& 26,667& 85& 60& 40& 50\\
| 13: | 8& 50 &56,667& 30& 23,333& 93,333& 23,333& 23,333& 46,667\\
| 14: | 9& 100 &93,333& 66,667& 53,333& 90& 66,667& 100& 100\\
| 15: | 10& 100& 90& 70& 90& 100& 100& 90& 100\\
| 16: | 11& 85& 80& 55& 43,333 &90& 83,333& 93,333& 83,333\\
| 17: | 12& 93,333& 86,667& 90& 85& 100&100&100& 100\\
| 18: | \hline
| 19: | Mittelwert& 75& 69,583& 55,556& 56,111& 87,917& 64,861& 69,028& 75,139
| 20: | \end{tabular}
| 21: | \caption{Mittelwerte über die letzten 5 Episoden; richtungsspezifisch}
| 22: | \label{tab:MittelwerteÜberDieLetzten5EpisodenRichtungsspezifisch}
| 23: | \end{table}[/mm]
| 24: | >
| 25: | > |
>
> habe ich diese wunderschöne Tabelle gezaubert:
>
> [Dateianhang nicht öffentlich]
>
> Nun würde ich allerdings die Spalten gerne zentriert oder
> vllt auch lieber rechtsbündig, evtl. sogar in der ersten
> Zeile zentriert und den Rest rechtsbündig oder so machen.
> Das normale {c|c|c|c|c|c|c|c|c} funkioniert nicht,
> jedenfalls habe ich keine Stelle gefunden, an der es
> funktioniert, da ich diese p{1cm} als Spaltenbreitenangabe
> da stehen habe. Anfangs hatte ich das nicht, da hatte ich
> nur den Befehl {c|c|c|c|c|c|c|c|c}, was dazu führte, dass
> die Tabelle von der Breite her nicht ganz auf die Seite
> passte, da der Text in den ersten Zeilen zu breit war.
(Was willst du mit dem [h]? bei tabular gibt es nur b und t. Das soll wohl eher zu table.)
Benutze \usepackage{array}, damit hast du zusätzliche Spaltenspezifikationen. Du kannst zum Beispiel mit >{\centering}p{1.5cm} eine zentrierte Spalte der Breite 1,5cm bekommen.
Wenn du die Formatierung einer einzelnen Zelle ändern willst, musst du für diese eine Zelle \multicolumn{1}... benutzen. Zum Beispiel um eine Zelle rechtsbündig ohne Umbruch zu setzen:
\multicolumn{1}{r|}{83,333} statt 83,333
Der senkrechte Strich hinter dem r ist wichtig, denn \multicolumn ersetzt die Zelle einschließlich dem automatisch dahinter eingefügten Material, d.h. einschließlich dem senkrechten Strich am rechten Rand.
> Einen manuellen Zeilenumbruch habe ich nicht hinbekommen.
> Falls jemand weiß, wie das in meiner Tabelle funktionieren
> würde, sodass dann auch noch das Zentrierte erhalten
> bleibt, kann er mir das gerne sagen.
Innerhalb der Tabelle bedeutet \\ das Ende einer Tabellenzeile. Nimm statt dessen \newline.
>
> Ach, und vielleicht weiß auch noch jemand, wie ich das
> "Proband" links oben eine Zeile tiefer bekomme? Dass das
> bzgl. der Höhe in der Mitte der Spalte steht?
Erzwinge eine Leerzeile, indem du davor \mbox{}\newline einfügst!
Viele Grüße
Rainer
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:44 Sa 25.07.2009 | Autor: | Bastiane |
Hallo Rainer!
Vielen Dank schon mal. Ich hab' es jetzt mal so versucht:
1: |
| 2: | \begin{table}[h]
| 3: | \centering $\begin{array}{>{\centering}p{1.5cm}|>{\centering}p{1cm}|>{\centering}p{1cm}|>{\centering}p{1cm}|>{\centering}p{1cm}|>{\centering}p{1cm}|>{\centering}p{1cm}|>{\centering}p{1cm}|>{\centering}p{1cm}}
| 4: | \mbox{}\newline\mbox{Proband} & 0° und 180° & 22,5° und 202,5° & 45° und 225° & 67,5° und 247,5° & 90° und 270° & 112,5° und 292,5° & 135° und 315° & 157,5° und 337,5°\\
| 5: | \hrule
| 6: | 1& 21,667 &15& 20& 20& 100& 0& 6,667 &6,667\\
| 7: | 2& 90& 83,333 &66,667 &63,333 &93,333& 70& 76,667 &83,333\\
| 8: | 3& 100& 100& 95& 90& 83,333 &83,333 &100& 100\\
| 9: | 4& 50& 20& 10& 16,667& 70& 31,667 &28,333 &31,667\\
| 10: | 5& 70& 83,333& 50& 80& 70& 60& 76,667& 100\\
| 11: | 6& 93,333& 93,333& 100& 81,667& 80& 100& 93,333& 100\\
| 12: | 7& 46,667& 33,333& 13,333& 26,667& 85& 60& 40& 50\\
| 13: | 8& 50 &56,667& 30& 23,333& 93,333& 23,333& 23,333& 46,667\\
| 14: | 9& 100 &93,333& 66,667& 53,333& 90& 66,667& 100& 100\\
| 15: | 10& 100& 90& 70& 90& 100& 100& 90& 100\\
| 16: | 11& 85& 80& 55& 43,333 &90& 83,333& 93,333& 83,333\\
| 17: | 12& 93,333& 86,667& 90& 85& 100&100&100& 100\\
| 18: | \hline
| 19: | \mbox{Mittelwert}& 75& 69,583& 55,556& 56,111& 87,917& 64,861& 69,028& 75,139
| 20: | \end{array}$
| 21: | \caption{Mittelwerte über die letzten 5 Episoden; richtungsspezifisch}
| 22: | \label{tab:MittelwerteÜberDieLetzten5EpisodenRichtungsspezifisch}
| 23: | \end{table}
|
Und das hier kommt dabei heraus:
[Dateianhang nicht öffentlich]
Was ist denn daran falsch? Habe mehrfach rumprobiert, aber er nimmt erstens die horizontalen Linien nicht (wann benutzt man übrigens hline und wann hrule?), und zweitens, was ich überhaupt nicht verstehe, rückt er die Zahlen, die eigentlich ganz links stehen sollen, so komisch ein - wie eine Diagonale...
Mag sein, dass da sonst auch noch was falsch ist, das Ganze mit den tabular, tables und arrays hab' ich immer noch nicht verstanden. Ich dachte, table ist z. B. dafür, dass man eine caption und ein label setzen kann, deswegen macht man das z. B. um Tabellen rum. Und array ist doch eigentlich für mathematische Tabellen, oder? Und weil ich hier nur simple Zahlen und keine Formeln habe, dachte ich, tabular könnte reichen. Aber wenn das mit der Spaltenbreite so besser geht, nehme ich gerne auch array, nur irgendwas stimmt hier ja noch nicht. Weißt du, was?
Viele Grüße
Bastiane
Dateianhänge: Anhang Nr. 1 (Typ: png) [nicht öffentlich]
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:32 Sa 25.07.2009 | Autor: | rainerS |
Hallo Bastiane!
> Vielen Dank schon mal. Ich hab' es jetzt mal so versucht:
>
> [...]
>
> Was ist denn daran falsch? Habe mehrfach rumprobiert, aber
> er nimmt erstens die horizontalen Linien nicht (wann
> benutzt man übrigens hline und wann hrule?),
Also, hrule ist keine LaTeX-Anweisung, sondern eine TeX-Primitive. (Use at your own risk! )
hline ist schon richtig. Du bist ein Opfer der Mehrfachbedeutung von \\. Je nach Umgebung wird \\ umdefiniert: in center bedeutet es eine neue Zeile (\newline), in tabular/array eine neue Tabellenzeile (\tabularnewline). Dadurch, dass du die letzte Tabellenspalte mit \centering zentriert hast, verhält sich \\ wie in einer center-Umgebung und bedeutet eine neue Zeile in der aktuellen Tabellenzelle. Daher ist damit die Tabellenzeile noch nicht beendet, und \hline funktioniert nicht.
Abhilfe: benutze an den Enden der Tabellenzeilen die Anweisung \tabularnewline statt \\.
> und zweitens,
> was ich überhaupt nicht verstehe, rückt er die Zahlen,
> die eigentlich ganz links stehen sollen, so komisch ein -
> wie eine Diagonale...
Derselbe Grund: da LaTeX nie das Ende der Tabellenzeilen sieht.
Übrigens solltest du jede Menge Fehlermeldungen sehen, zum Beispiel
! Extra alignment tab has been changed to \cr.
<recently read> \endtemplate
> Mag sein, dass da sonst auch noch was falsch ist, das Ganze
> mit den tabular, tables und arrays hab' ich immer noch
> nicht verstanden. Ich dachte, table ist z. B. dafür, dass
> man eine caption und ein label setzen kann, deswegen macht
> man das z. B. um Tabellen rum.
Richtig. table ist für Gleitobjekte, also Blöcke, die automatisch im Text herumwandern können, ebenso figure. Der einzige Unterschied zwischen table und figure ist die Bezeichnung und die Tatsache, dass sie getrennt nummeriert werden. Es gibt sie, weil Tabellen und Abbildungen typische Elemente eines größeren Textes sind. Man kann aber ohne weiteres einen neuen Typ definieren, zum Beispiel mit dem Paket float.
Wenn du deine Tabelle an eine ganze bestimmte Stelle im Text setzen willst, ist table die falsche Umgebung, denn du willst ja nicht, dass sie automatisch verschoben wird. Dann lässt du am besten table ganz weg und schreibst
1: | \begin{center}
| 2: | \begin{tabular}{...}
| 3: | ...
| 4: | \end{tabular}
| 5: | \end{center} |
> Und array ist doch
> eigentlich für mathematische Tabellen, oder? Und weil ich
> hier nur simple Zahlen und keine Formeln habe, dachte ich,
> tabular könnte reichen.
Richtig, beide gehen. Im Prinzip sind tabular und array gleich, bis auf zwei Details:
- array setzt die einzelnen Zellen als Formel im Mathemodus, tabular als Text
- array ist Teil einer Formel im Mathemodus und zentriert die Tabelle vertikal, tabular richtet die oberste oder unterste Zeile am umgebenden Text aus.
Deswegen benutzt du array in Formeln und tabular außerhalb. Natürlich kannst du auch in tabular eine Formel in eine Zelle schreiben, nur musst du dafür $...$ drumherum schreiben.
Viele Grüße
Rainer
|
|
|
|