PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : chemische Formel in Tabelle verrückt die Höhe des Textes



Miriam
04-02-2006, 10:45
guten morgen an alle,

ich habe da noch mal ein Problem.

Ich habe in meinem Anhang eine Tabelle die wie folgt lautet:
\documentclass[a4paper,12pt,twoside]{scrbook}
\usepackage[dvips]{graphics}
\usepackage{epsfig}
\usepackage{subfigure}
\usepackage[nooneline,bf]{caption2}

\usepackage{umlaut,german}
\usepackage[normalem]{ulem}
\usepackage{textcomp}
\usepackage{tabularx}
\usepackage{supertabular}
\usepackage{amsmath}
\usepackage{longtable}
\usepackage[automark]{scrpage2}

\begin{document}
\begin{table}[!ht]
\caption{\hspace{0.25in}{\textbf{Lösungsmittel}}}
\begin{center}
\begin{tabularx}{\textwidth}{>{\setlength{\hsize}{0.6\hsize}}Y >{\setlength{\hsize}{0.3\hsize}}Y >{\setlength{\hsize}{0.3\hsize}}Y >{\setlength{\hsize}{0.3\hsize}}Y >{\setlength{\hsize}{0.3\hsize}}Y >{\setlength{\hsize}{0.3\hsize}}Y}
\hline \\
\textbf{Daten} & \textbf{DEK}& \textbf{DEGDEE} & \textbf{DPE} & \textbf{EtOH} & \textbf{Hp} \\
\setlength{\arrayrulewidth}{0.5pt} \\
\hline \\
chemische Formel & \[\mathrm{C_5H_{10}O}\] & \[\mathrm{C_{8}H_{18}O_3}\] & \[\mathrm{C_{6}H_{14}O}\] & \[\mathrm{C_{2}H_{6}O}\]& \[\mathrm{C_{7}H_{16}}\] \\
Dichte [$\frac{g}{cm^3}$] bei 20°Celsius & 0.81 & 0.91 & 0.79-0.793 & 0.79-0.793 & 0.68 \\
\end{tabularx}
\end{center}
\end{table}
\end{document}
mein problem besteht darin, dass die Höhe in der ersten Zeile von chemische Formel und den Formeln nicht gleich ist. Latex verrückt durch die Formeln die höhe.
Sonst funktioniert das Prima.

Vielleicht könnte mir noch mal jemand von euch helfen.

Das wäre wirklich toll.
Vielen Dank schon mal im vorraus.

Gruß,
Miriam

Xenara
04-02-2006, 11:12
Hi,

Ich denke, was du meinst liegt an dem Bruch hier:
Dichte [$\frac{g}{cm^3}$] bei 20°Celsius

Schreib doch einfach [g/cm^3] und lass den Bruch weg. Ich habs eigentlich noch in keinem Buch gesehen, dass man echte Brüche im Fließtext bzw. außerhalb einer mathematischen Formel schreibt.

Was für eine Arbeit wird denn das? Wenn du viel mit chemischen Formeln (also hoch-tiefgestellt) zu tun hast, schau dir mal chemsym an, das macht es viel einfacher.

Und noch ne Frage ;)
Bei mir kompiliert dein Text nicht richtig, kommen ein Haufen Fehlermeldungen. Mit "R" kann ich ihr zwar dazu bringen, was Gescheites auszuspucken, aber blöd ist es schon. Ist das bei dir auch oder liegt es an meiner LaTeX-Installation? Vielleicht weiß da auch jemand anderes was dazu? Hab teTeX mit TexShop auf MacOS 10.3.9.

countbela666
04-02-2006, 11:28
Hallo Miriam,

der Inhalt der ersten Zeile ist so verschoben, weil du die chemischen Formeln nicht als Fließtextformel mit $...$, sondern als abgesetzte Formel mit \[...\] einbindest. Die von dir genutzte Variante sollte nur für Formeln verwendet werden, die auch wirklich abgesetzt in einer eigenen Zeile stehen sollen und nicht innerhalb von Fließtext bzw. einer Tabelle.

Lösung wäre also, alle \[...\] durch $...$ zu ersetzen.

Ein paar Sachen noch:

Den Tabellentitel solltest du so auf keinen Fall lassen. Das \textbf{...} ist unnötig, wenn du dem caption-Paket den Parameter font=bf übergibst und der \hspace ist ganz böse Schusterei, die spätestens wenn du ein Tabellenverzeichnis einfügen willst, große Probleme bringt. Dafür gibt es den Befehl \DeclareCaptionLabelSeparator mit dem du eigene Trenner für diesen Zweck erstellen kannst.
Die Umgebung center fügt ebenfalls zusätzlichen vertikalen Abstand ein, es wäre wahrscheinlich besser, mit dem Schalter \centering zu arbeiten. Obwohl es in deinem Beispiel sowieso nicht notwendig ist, da deine Tabelle auf Seitenbreite skaliert ist und deswegen auch nicht zentriert werden muss.
Den Sinn der Umdefinitionen von \hsize für die tabularx-Spalten ist mir für dieses Beispiel auch verborgen geblieben. Ich hab das nur genutzt, wenn ich mit \multicolumn mehrere X-Spalten zusammenfassen musste. Würd ich hier weglassen.
Das Paket caption2 ist veraltet; aktuell ist die Version 3 des Pakets, die du mit \usepackage{caption} (ohne Nummer) einbindest (s. l2tabu)
Das Paket epsfig ist ebenfalls veraltet und bindet lediglich das Paket graphicx ein. Da dieses wiederum das Paket graphics einbindet, kannst du


\usepackage{graphics}
\usepackage{epsfig}durch ein \usepackage{graphicx} ersetzen

Hier mal dein MB (allerdings ohne den Spaltentyp Y, den du uns ja vorenthalten hast ;)) mit den angesprochenen Änderungen:

\documentclass[a4paper,12pt,twoside]{scrbook}
\usepackage{graphicx}
\usepackage{subfigure}
\usepackage[nooneline]{caption}

%%% eigener Label-Separator (Doppelpunkt + \hspace)
\DeclareCaptionLabelSeparator{mysep}{:\quad}
\captionsetup{font=bf,labelsep=mysep}

\usepackage{umlaut,german}
\usepackage[normalem]{ulem}
\usepackage{textcomp}
\usepackage{tabularx}
\usepackage{supertabular}
\usepackage{amsmath}
\usepackage{longtable}
\usepackage[automark]{scrpage2}

\begin{document}
\begin{table}[!ht]
\caption{Lösungsmittel}
%%% Breite der ersten Spalte vorgegeben, den Rest macht tabularx
\begin{tabularx}{\textwidth}{p{.2\textwidth}XXXXX}
\hline \\
\textbf{Daten} & \textbf{DEK}& \textbf{DEGDEE} & \textbf{DPE} & \textbf{EtOH} & \textbf{Hp} \\
\setlength{\arrayrulewidth}{0.5pt} \\
\hline \\
%%% Formeln in $...$ eingebunden
chemische Formel & $\mathrm{C_5H_{10}O}$ & $\mathrm{C_{8}H_{18}O_3}$ & $\mathrm{C_{6}H_{14}O}$ & $\mathrm{C_{2}H_{6}O}$& $\mathrm{C_{7}H_{16}}$ \\
Dichte [$\frac{g}{cm^3}$] bei 20°Celsius & 0.81 & 0.91 & 0.79-0.793 & 0.79-0.793 & 0.68 \\
\end{tabularx}
\end{table}
\end{document}

@Xenara: ich denke wie gesagt nicht, dass es an dem Bruch liegt, sondern an den abgesetzten Formeln. Dass du nicht kompilieren kannst, liegt wahrscheinlich daran, dass sie den neu definierten Spaltentyp Y nicht mit ins MB übernommen hat. Wenn du stattdessen X einsetzt sollte es funtionieren.

Grüße,
Marcel

Miriam
04-02-2006, 11:47
Hallo ihr beiden

Man ich bin wirklich beeindruck wie viel Ahnung ihr davon habt.

Sorry, ja das mit der Y Spaltenbreite hatte ich vergessen zu übertragen:rolleyes:
Das nächste mal versuche ich alles zu übertragen.

Marcel du bist nen Gott. Sieht jetzt genau so aus, wie ich das haben wollte.
Danke schön.:D

Und wieder ein Problem gelöst.:o

Gruß,
Miriam

Miriam
04-02-2006, 12:01
@Xenara: Das ist meine Studienarbiet zum Thema Kristallisation
Ich studiere Chemieingenieurwesen an der Uni Dortmund. Das ist das einzige mal das ich die chemischen Formeln brauche.

Vielleicht könnt ihr mir ja noch mal helfen.....:confused:

Das Problem ist nur, dass ich nicht ganz weiß wie ich jetzt das MB erstelle:

Es geht um die Unterschrift bei Bilder.
Ich habe in der Präambel eingeführt, dass zwischen Abbildung 3.5: ein TAB Abstand eingeführt wird. Das tut es auch ganz braf.
Nur besteht das Problem darin, dass bei langen Unterschriften, die in die nächste Zeile rutschen dieser Abstand nicht mehr eingehalten wird, sonder direkt unter Abbildung 3.5 in der nächsten Zeile beginnt.
In etwa so:

\documentclass[a4paper,12pt,twoside]{scrbook}
\usepackage{umlaut,german}
\usepackage[normalem]{ulem}
\usepackage{textcomp}
\usepackage{tabularx}
\usepackage{supertabular}
\usepackage{amsmath}
\usepackage{longtable}
\usepackage[automark]{scrpage2}
\setlength{\parindent}{5em}
\usepackage[dvips]{graphicx}
\usepackage{subfigure}

\begin{document}
\begin{figure}[!ht]
\leavevmode
\begin{center}
\includegraphics[scale=.3]{./Bilder/Experimente/Versuchsdurchfuehrung/VersuchsdurchfuehrungDiagramm.eps}
\caption{\hspace{0.25in}{Schematische Darstellung des Ablaufs der
experimentellen Bestimmung der ÜS- und SLE-Temperaturen }}
\label{fig: DiagrammBestimmungTEMP}
\end{center}
\end{figure}
\end{document}

Wäre toll, wenn ihr noch mal einspringen könntet.

Gruß,
Miriam

countbela666
04-02-2006, 12:18
Vielleicht könnt ihr mir ja noch mal helfen.....Versuchen wir's doch mal :D

Ich habe in der Präambel eingeführt, dass zwischen Abbildung 3.5: ein TAB Abstand eingeführt wird.Das \setlength{parindent} hat damit eigentlich nichts zu tun. Der Abstand wird nur durch dein \hspace{.25in} innerhalb der caption erzeugt und wie ich bereits im vorigen Post geschrieben habe, ist das sehr problematisch, wenn du ein Tabellenverzeichnis anlegen willst, da dann dieser Abstand auch im Tabellenverzeichnis erscheint, wenn der Befehl nicht schon vorher beim Schreiben in die LOT-Datei zerbricht. Also: Nimm dieses hspace{...} unbedingt aus jeder caption raus. Wie bereits oben geschrieben, kannst du den Befehl \DeclareCaptionLabelSeparator nutzen um zusätzlichen Abstand dort einzufügen (s. Beispiel)

Nur besteht das Problem darin, dass bei langen Unterschriften, die in die nächste Zeile rutschen dieser Abstand nicht mehr eingehalten wird, sonder direkt unter Abbildung 3.5 in der nächsten Zeile beginnt.Das kannst du mit dem caption-Paket ebenfalls ändern, nämlich mit dem Captionformat "hang".

Hier das ganze mal als Minimalbeispiel:

\documentclass[a4paper,12pt,twoside]{scrbook}
\usepackage{caption}

%%% eigener Label-Separator (Doppelpunkt + \hspace)
\DeclareCaptionLabelSeparator{mysep}{:\hspace{.25i n}}
\captionsetup{format=hang,labelsep=mysep}

\begin{document}
\begin{figure}[!ht]
\centering
%\includegraphics[scale=.3]{./Bilder/Experimente/Versuchsdurchfuehrung/VersuchsdurchfuehrungDiagramm.eps}
%%%% Platzhalter für deine Grafik (nur fürs MB)
\rule{4cm}{4cm}
\caption{Schematische Darstellung des Ablaufs der experimentellen Bestimmung der ÜS- und SLE-Temperaturen}
\end{figure}
\end{document}Das \begin{center}...\end{center} hab ich wie schon oben durch \centering ersetzt um zusätzlichen vertikalen Abstand zu umgehen.

Grüße,
Marcel

Miriam
04-02-2006, 12:33
Sag mal, hast du das irgendwie studiert?:p

Wirklich prima....
Danke Dir:)
Nur noch ein letztes Problem, wenn ich das so mache, wie du sagst, setzt er bei mir die erste Spalte immer linksbündig, kann ich das irgendwie centrieren?

Gruß,
Miriam

countbela666
04-02-2006, 12:39
Sag mal, hast du das irgendwie studiert?:p

Wirklich prima....
Danke Dir:) Gern geschehen. Also Informatik studier ich schon, nur ein LaTeX-Seminar gibt's bei uns leider nicht... ;)

Ich geh davon aus, dass du dich auf den Post mit der Tabelle beziehst. Die erste Spalte wird zentriert, wenn du folgendes in die Spaltendefinition einfügst:

\begin{tabularx}{\textwidth}{>{\centering\arraybackslash}p{.2\textwidth}XXXXX}Gr üße,
Marcel

Xenara
04-02-2006, 12:40
Hi,

Also, das mit dem X statt Y funktioniert. Und da sind auch die Zeilen so verrutscht. Vorher war die Ausgabe bei mir ganz in Ordnung und ich hab mich gefragt, wo eigentlich das Problem liegt ;)
Hab schon befürchtet, dass meine Installation ein Mist ist...

Das Chemsym-Paket vereinfacht $H_{2}O$ zu H_{2}O oder $K^+$ zu K^+
Aber wenn du es nicht brauchst, lass es weg, dann besteht nicht die Gefahr, dass es mit einem anderen Paket kollidiert.

Grüße,
Xenara

Miriam
04-02-2006, 12:47
Vielen Dank an Euch beide.

Ich war ja eigentlich schon fast verzeifelt, aber jetzt ist alles wieder gut.

Bis auf mein Seitenproblem, aber da melde ich mich morgen noch mal mit.

Sorry für die Drohung, aber ihr seid hier wirklich alle toll, dass ihr mir so helft.

Hätt ich nie so hinbekommen.

Danke nochmals

Gruß,
Miriam