Wichtige Hinweise und Vorabhilfen für dieses Unterforum

Tabellen und Grafiken erstellen und anordnen


Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Wichtige Hinweise und Vorabhilfen für dieses Unterforum

Beitrag von KOMA »

Du findest in diesem Beitrag wichtige Informationen zum Forum und zum Thema Tabellen und Grafiken. Gemeint sind damit nicht nur die bekannten Gleitumgebungen table und figure, sondern auch die Tabellen selbst, das Erstellen von Abbildungen in LaTeX und das Einladen externer Abbildungen. Während die Umgebungen tabular, table und figure vom LaTeX-Kern selbst und den Klassen vorgegeben werden, wird für die meisten weitergehenden Möglichkeiten die Hilfe zusätzlicher Pakete benötigt. Die Verzeichnisse zu Gleitumgebungen werden in dem eigenen Unterforum Verzeichnisse behandelt.

Bitte lies diese Informationen durch bevor Du eine Frage stellst. In einigen Fällen wird sich die Frage dadurch erübrigen, da Du die Antwort bereits gefunden hast. In anderen Fällen werden Dir die Informationen auch helfen, die Frage so zu stellen, dass Dir schnell geholfen werden kann.


Bevor Du eine Frage stellst

Es gibt eines ganze Reihe von Paketen, mit denen man die Tabellen- oder Grafikfähigkeiten von LaTeX verbessern kann. Eine Übersicht über die wichtigsten gibt es unten. Zu jedem dieser Pakete gehört auch eine Anleitung. Diese sollte man bei Problemen als erstes konsultieren. Anleitungen findet man in der Regel mit Hilfe des Programms texdoc. Drückt man beispielsweise unter KDE oder GNOME Alt+F2 oder unter Windows Windows+R und gibt in dem dann erscheinenden Dialog
texdoc longtable
ein, so erhält man die Anleitung zum Paket longtable oder eine Übersicht über alle Anleitungen zu diesem Paket.


Häufige Probleme

Es gibt in der De-TeX-FAQ einen Bereich mit dem Thema Gleitumgebungen. Darin finden sich viele Probleme, die sich auf die Gleitumgebungen figure oder table beziehen, mit Lösungen. Darüber hinaus gibt es dort das Thema Tabellen, das allerlei häufige Fragen zum Bereich der Tabellen selbst behandelt. In gleicher Weise wird im Thema Grafiken, Bilder, Farben und andere Effekte auf Möglichkeiten zur Erstellung und Einbindung von Grafiken eingegangen.
Auch auf der Schwesterseite TeXwelt finden sich Informationen.
Wann sollte ich Gleitumgebungen verwenden?
Wie kann ich die Positionierung von Gleitobjekten beeinflussen?

Speziell zu Tabellen gibt es mit »Satz von Tabellen« einen Vortrag von Axel Reichert, der sehr viele Fragen beantwortet. Weitere wichtige Informationen findet man beispielsweise in der Anleitung zum unten erwähnten Paket booktabs.

Weitere häufige Probleme im Zusammenhang mit Abbildungen:
  • Unter, über oder neben einer Abbildung wird zusätzlicher Abstand eingefügt: Dieses Problem ist meist gar kein LaTeX-Problem, sondern rührt daher, dass die Grafik mit entsprechend viel Rand erstellt/exportiert wurde. Man kann das einfach dadurch testen, dass man die entsprechende \includegraphics-Anweisung innerhalb einer \frame-Anweisung verwendet, also beispielsweise:
    \frame{\includegraphics{http://texwelt.de/wissen/fragen/6725/wo-bzw-wie-finde-ich-die-anleitung-zu-einem-paket-oder-einer-klasseMeineAbbildung}}
    Die \frame-Anweisung zeichnet ein dünne Linie ohne Abstand um die Abbildung (die bekanntere Anweisung \fbox setzt hingegen einen Abstand zwischen Rand zwischen Linien und Inhalt). Befindet sich der störende Abstand innerhalb der Umrandung, so ist sie Teil der Abbildung. In diesem Fall kann entweder die Abbildung mit einem geeigneten Programm korrigiert werden (beispielsweise mit pdfcrop für PDF-Dateien), oder man wählt mit den Optionen viewport und clip nur einen Ausschnitt (siehe Anleitung zu graphics/graphicx).
  • Bei Verwendung eines Dateinamens oder Pfadnamens mit Leerzeichen oder Sonderzeichen oder mehreren Punkten wird ein Fehler gemeldet oder zusätzlich der Dateiname oder ein Teil des Dateinamens in die Ausgabe geschrieben: Dieses Problem hat seine Ursache in der Verarbeitung von Dateinamen durch TeX. Das Paket grffile kann hier insbesondere bei Verwendung von PDFTeX eine Verbesserung bringen. Empfehlenswert ist jedoch, bei Dateinamen und Pfadnamen auf Leerzeichen und Sonderzeichen zu verzichten.
  • Bilder neben Text oder anderen Elementen sind vertikal an der Unterkante des Bildes ausgerichtet: Die Ursache hierfür ist darin zu suchen, dass ein mit \includegraphics eingebundenes Bild seine Grundlinie unten hat, also quasi auf der Grundlinie steht. Dies ist grundsätzlich zunächst kein Problem, kann aber unerwünscht sein. Mit Hilfe von \raisebox ist es jedoch problemlos möglich, die Grundlinie zu verschieben. Im Folgenden werden einige Spielarten gezeigt. Dabei gibt die dünne Linie, die mit \hrulefill erzeugt wurde, die Grundlinie an:
    \documentclass[parskip=full-]{scrartcl}
    \usepackage[demo]{graphicx}
    \begin{document}
    
    \includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}%
    \hrulefill
    \parbox[b]{.5\textwidth}{\raggedright Bild auf der Grundlinie,\\Text unten ausgerichtet}
    
    \includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}%
    \hrulefill
    \parbox[tt]{.5\textwidth}{\raggedright Bild auf der Grundlinie,\\Text oben ausgerichtet}
    
    \includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}%
    \hrulefill
    \parbox[c]{.5\textwidth}{\raggedright Bild auf der Grundlinie,\\ Text zentriert}
    
    \raisebox{-\totalheight}{\includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}}%
    \hrulefill
    \parbox[b]{.5\textwidth}{\raggedright Bild unter der Grundlinie,\\ Text unten ausgerichtet}
    
    \raisebox{-\totalheight}{\includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}}%
    \hrulefill
    \parbox[tt]{.5\textwidth}{\raggedright Bild unter der Grundlinie,\\ Text oben ausgerichtet}
    
    \raisebox{-\totalheight}{\includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}}%
    \hrulefill
    \parbox[c]{.5\textwidth}{\raggedright Bild unter der Grundlinie,\\ Text zentriert}
    
    \raisebox{\dimexpr\ht\strutbox-\totalheight\relax}{\includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}}%
    \hrulefill
    \parbox[b]{.5\textwidth}{\raggedright Bild oben ausgerichtet,\\ Text unten ausgerichtet}
    
    \raisebox{\dimexpr\ht\strutbox-\totalheight\relax}{\includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}}%
    \hrulefill
    \parbox[tt]{.5\textwidth}{\raggedright Bild oben ausgerichtet,\\ Text oben ausgerichtet}
    
    \raisebox{\dimexpr\ht\strutbox-\totalheight\relax}{\includegraphics[height=3\baselineskip,width=.4\textwidth]{demo}}%
    \hrulefill
    \parbox[c]{.5\textwidth}{\raggedright Bild oben ausgerichtet,\\ Text zentriert}
    
    \end{document}
  • Nach dem Einfügen einer Abbildung im PNG-Format wird im PDF plötzlich auf der Seite mit dem Bild alles fett dargestellt: Dies ist ein bekanntest Problem vor allem des Adobe Readers. pdfTeX wurde sogar schon einmal geändert, um dieses Problem zu beseitigen. Allerdings kam es mit der nächsten Version des Adobe Readers zurück. Das Problem kann beseitigt werden, indem man den Alpha-Kanal (Transparenz) aus der PNG-Datei entfernt. Dies ist mit verschiedenen Grafikprogrammen wie GIMP möglich. Auch das Kommandozeilenprogramm convert von ImageMagick kann dafür verwendet werden. Das nähere Vorgehen für GIMP und ImageMagick ist im Forum beschrieben.
Weitere häufige Probleme im Zusammenhang mit Tabellen:
  • Das erste Wort einer p- oder X-Spalte wird nicht getrennt: Das erste Wort eines Absatzes wird nie getrennt. Dem kann man aber mit einem \hspace{0pt} abhelfen, da hierbei der Null-Abstand zum ersten Wort und damit das eigentliche erste Wort zum zweiten Wort wird. Soll das in einer Spalte immer passieren, kann man mit Hilfe des array-Pakets die Spaltendefinition per »>{\hspace{0pt}}« entsprechend erweitern. Zur Verwendung von »>{…}« in Spaltendefinitionen siehe die Anleitung des array-Pakets.
Wenn Du eine Frage stellst

Bitte beachte, dass es in diesem Forum wichtig ist, ein Problem klar zu benennen, zu beschreiben und durch ein vollständiges Minimalbeispiel zu verdeutlichen. Ein vollständiges Minimalbeispiel sollte auch angegeben werden, wenn man selbst noch keine Lösungsidee hat. Anderenfalls müssten Helfer sich selbst Beispiele aus den Fingern saugen, um ihre Ideen testen zu können. Wenigstens diesen Teil der Arbeit, kann und sollte der Fragesteller den Helfern abnehmen.

Bei Fragen zur Einbindung von externen Abbildungen ist wichtig, die tatsächliche Abbildung im vollständigen Minimalbeispiel durch einen Platzhalter zu ersetzen.
Dazu fügt man beim Laden von graphicx die Option demo ein und führt dann erneut Testläufe durch. Dabei werden alle Bilddateien im Dokument durch schwarze Kästen ersetzt. Allerdings haben diese Kästen nur dann dieselbe Größe wie die ursprünglichen Bilder, wenn die Optionen width und height bei den \includegraphics-Anweisungen angegeben sind und die Option keepaspectratio nicht angegeben war. Hier sind also ggf. zusätzliche Änderungen erforderlich.

Alternativ ersetzt man alle \includegraphics-Anweisungen durch \rule-Anweisungen. Dabei gibt man als erstes Argument die gewünschte Breite und als zweite die gewünschte Höhe der Ersatzabbildung an.

Eine weitere Alternative besteht in der Verwendung des Pakets mwe, das auch einige Beispielabbildungen wie example-image in verschiedenen Dateiformaten bereitstellt. Diese kann man einfach an Stelle der eigenen Abbildungen verwenden. Gegebenenfalls kann man die Größe über die Optionen width und height bei \includegraphics an die der eigenen Grafiken anpassen. Näheres zu diesen Beispielbildern ist bei Bedarf der Anleitung des Pakets zu entnehmen. (Wortzitat Minimalbeispielanleitung)

Ist statt des Platzhalters die externe Abbildung für die Verdeutlichung unbedingt notwendig, dann und nur dann ist diese im Anhang anzugeben. Dabei sind jedoch urheberrechtliche Vorschriften unbedingt zu beachten! -> Wie hänge ich ein Bild an?

Bitte beachte, dass das Paket graphics bzw. graphicx in der Regel keine Treiberoption pdftex oder dvips benötigt. Dies gilt umso mehr, wenn es mit der Option demo geladen wird. Für ein Minimalbeispiel sollte eine Treiberoption daher nur angegeben werden, wenn das Minimalbeispiel nur mit einem ganz bestimmten Treiber funktioniert. Du solltest das selbst überprüfen.


Die wichtigsten Pakete aus dem Bereich Grafiken
  • graphics/graphicx sind sozusagen die Basis der Einbindung externer Abbildungen in LaTeX. In der Regel wird das Paket graphicx verwendet, da es eine modernere key=value-Schnittstelle besitzt. Beide Pakete stellen weit mehr als nur die Anweisung \includegraphics zur Verfügung. So werden beispielsweise auch Rotation, Verkleinerung/Vergrößerung und Verzerrrung geboten. Es wird hier ausdrücklich darauf hingewiesen, dass bei Verwendung von pdflatex mit PDF-Ausgabe oder bei Verwendung von VTeX oder dvips in der Regel keine Treiberoption angegeben werden muss! Desweiteren ist es nicht notwendig selbst die Anweisung \DeclareGraphicsExtensions oder \DeclareGraphicsRule zu verwenden, da dies von den Treibern oder der Datei graphics.cfg bereits korrekt erledigt wird! Bei Verwendung von epspdfconversion (siehe unten) ist jedoch die Anleitung dieses Pakets zu beachten!
  • pgf/TikZ bietet vielfältige Zeichenmöglichkeiten direkt in LaTeX. Dabei werden sowohl PDF- als auch PostScript-Ausgabe berücksichtigt. Es gibt zahlreiche Erweiterungspakete, die TikZ nutzen, beispielsweise pgfplots für Funktions-Plots.
  • pstricks war das erste wirklich mächtige Zeichenwerkzeug für LaTeX. Von Haus aus unterstütze pstricks nur die PostScript-Ausgabe also nur den Weg LaTeX→DVI→PostScript nicht jedoch die direkte PDF-Ausgabe mit pdflatex. Es existieren jedoch die vielfältigsten Erweiterungen zu pstricks. Darunter sind auch verschiedene Erweiterungen, mit denen die Verwendung von pdflatex ermöglicht wird.
  • epspdfconversion ist eine Erweiterung des LaTeX-Pakets epstopdf und ermöglicht die Umwandlung von EPS-Dateien in PDF-Dateien zur Laufzeit von pdflatex. Zu diesem Paket existiert ein Wiki-Eintrag.
  • xcolor bietet Farbe mit LaTeX in einer Weise, die weit über die Fähigkeiten des Pakets color hinaus gehen. Es werden unterschiedliche Farbmodelle und sogar Konvertierungen zwischen den Farbmodellen unterstützt. Darüber hinaus stehen unterschiedliche Namensschemata für Farben mit teilweise sehr vielen namentlich bekannten Farben bereit. Es wird hier ausdrücklich darauf hingewiesen, dass bei Verwendung von pdflatex mit PDF-Ausgabe oder bei Verwendung von VTeX oder dvips in der Regel keine Treiberoption angegeben werden muss, da dies von den Treibern oder der Datei color.cfg bereits korrekt erledigt wird!
Die wichtigsten Pakete aus dem Bereich Tabellen
  • booktabs ist ein Paket zur deutlichen Verbesserung der Qualität von Tabellen. Dazu stellt das Paket nicht nur unterschiedliche horizontale Linien bereit, es liefert in seiner Anleitung auch Hinweise dazu, wie typografisch und optisch ansprechende Tabellen gestaltet werden.
  • tabularx bietet eine neue Tabellenumgebung für Tabellen fester Breite. Der dabei neue Spaltentyp X stellt mehrzeilig umbrechbare Spalten bereit, deren Breite automatisch durch die Tabellenbreite bestimmt wird. Die Verwendung mehrerer X-Spalten ist möglich.
  • array bietet die Möglichkeit, neue Spaltentypen zu definieren und Spalten mit zusätzlichen Eigenschaften zu versehen. Das Paket dient auch als Grundlage vieler anderer Pakete wie dem oben genannten tabularx.
  • longtable ermöglicht Tabellen, die über mehrere Seiten umbrochen werden.
  • ltxtable stellt eine Verbindung von longtable und tabularx dar.
  • supertabular bietet genau wie longtable die Möglichkeit, Tabellen über mehrere Seiten zu setzen. Das Paket ist komplexer als longtable hat aber seine Berechtigung, da es in einigen Fällen funktioniert, in denen longtable versagt.
  • xcolor bietet mit der Paketoption »table« Farben in Tabellen, die über die Möglichkeiten des Pakets colortbl hinaus gehen.
  • threeparttable bietet eine Umgebung, bei der Tabelle, Titel und Anmerkungen (Fußnoten) eine Einheit bilden. Die Umgebung kann auch innerhalb von table verwendet werden.
  • tabu stellt eine leistungsfähige Entwicklung dar, die diverse Tabellen-Möglichkeiten unterschiedlicher Pakete wie tabularx, longtable, xcolor, numprint und siunitx zusammenführt oder neu implementiert. Das Paket wird nicht mehr gepflegt.
Weitere Informationen

Weitere Informationen etwa über das Vorgehen nach Erhalt einer Antwort sind in den wichtigen Hinweisen und Vorabhilfen zum Unterforum »Allgemein« zu finden.


Version: 2017-05-31 18:02