automatisch an den Zitierstellen erscheinen, und am Ende des Dokuments wird automatisch ein in Zitierreihenfolge angeordnetes Literaturverzeichnis erzeugt — Sie haben keine einzige Zeile Formatierung geschrieben.
Zwei leistungsstarke Automatisierungswerkzeuge für lange Dokumente: Querverweise (Abschnitte, Abbildungen/Tabellen und Gleichungen, die aufeinander verweisen) und Literaturverwaltung (BibTeX).
Ihre gemeinsame Philosophie: Die Nummerierung erfolgt immer automatisch; Sie müssen sich nur einen "Labelnamen" ausdenken.
Labels und Referenzen: \label und \ref
Querverweise in drei Schritten: An der referenzierten Stelle ein Label mit \label{label} anlegen; an der verweisenden Stelle die Nummer mit \ref{label} abrufen (oder \pageref, \eqref).
| Befehl | Was es ausgibt | Typische Verwendung |
|---|---|---|
| \label{key} | Keine Ausgabe; beschriftet das vorangehende Objekt | Unmittelbar nach \section, \caption, Gleichung |
| \ref{key} | Nummer (z. B. 3, 1.2) | Abschnitt~\ref{sec:method} |
| \eqref{key} | Nummer in Klammern (z. B. (1)) | Gl.~\eqref{eq:loss} (nur für Gleichungen) |
| \pageref{key} | Seitenzahl | Siehe Seite~\pageref{sec:method} |
\label muss unmittelbar auf den referenzierten Befehl folgen und auf derselben Umgebungsebene geschrieben werden—"\section{Method}\label{sec:m}" ist die korrekte Form. Wenn Sie \label in den nächsten Absatz setzen, verweist es auf das falsche Objekt. Bei Gleichungen sollte \label innerhalb der equation-Umgebung geschrieben werden.
Beispiel: Querverweise auf Abschnitte, Gleichungen und Abbildungen
\usepackage{amsmath, graphicx}
\begin{document}
\section{Methode}\label{sec:method}
Dieser Abschnitt führt die Modellstruktur ein; die Verlustfunktion ist in Gl.~\eqref{eq:loss angegeben.},
Die experimentelle Analyse ist in Abschnitt~\ref{sec:result angegeben.}.
\begin{equation}\label{eq:loss}
L = \sum_{i=1}^{n} \left( y_i - \hat{y}_i \right)^2
\end{equation}
\section{Experimentelle Ergebnisse}\label{sec:result}
Der Verlust der Methode (Abschnitt~\ref{sec:method}) wird durch Gl.~\eqref gemessen.{eq:loss},
und die Kurvenform ist in Abbildung~\ref{fig:sin dargestellt}。
\begin{figure}[htbp]
\centering
\includegraphics[width=0.5\textwidth]{sin}
\caption{Sinuskurve}
\label{fig:sin}
\end{figure}
\end{document}
Alle Verweise erhalten automatisch die richtigen Nummern. Von da an werden, egal wie viele neue Abschnitte oder Gleichungen du einfügst, die Nummern und Verweise automatisch aktualisiert – das ultimative Gegenmittel gegen "manuelles Korrigieren von Nummern, bis du verrückt wirst" in Word.
Für die Label-Benennung wird empfohlen, "Präfix:Inhalt" zu verwenden. Übliche Präfixkonventionen sind wie folgt.
| Präfix | Objekt | Beispiel |
|---|---|---|
| sec: | Bereich | \label{sec:method} |
| fig: | Graph | \label{fig:sin} |
| tab: | Tabelle | \label{tab:result} |
| eq: | Gleichung | \label{eq:loss} |
| chap: | Kapitel (report/book) | \label{chap:intro} |
Hyperlinks: Das hyperref-Paket
Nach dem Laden von hyperref werden alle \ref-, \cite- und \url-Befehle automatisch zu anklickbaren Links, und im PDF wird ein Seitenleisten-Lesezeichenbereich erzeugt.
Beispiel: Übliche hyperref-Konfigurationen
citecolor=blue, urlcolor=blue]{hyperref}
% colorlinks=true markiert Links mit Farben (die standardmäßigen roten Kästchen sind hässlich)
% Drei Parameter steuern jeweils: interne Verweise / Literaturverzeichnis-Zitate / URL-Farben
\url{https://www.example.com} % URL-Typografie: automatischer Zeilenumbruch, anklickbar
hyperref sollte fast immer das letzte Paket sein, das in der Präambel geladen wird – es kann das Dokument nur dann korrekt umwandeln, wenn alle anderen Pakete bereits geladen sind; wird es zu früh geladen, führt das zu unerklärlichen Konflikten.
Literaturverzeichnis: BibTeX-Workflow
Der richtige Umgang mit Literaturangaben besteht nicht darin, eine Liste am Ende des Dokuments von Hand zu schreiben, sondern darin, die bibliografischen Informationen in einer .bib-Datenbank zu speichern, sie im Text mit \cite zu zitieren und das BibTeX-Programm die formatierte Bibliografie automatisch erzeugen zu lassen.
Schauen wir uns zunächst an, wie die Literaturdatenbank aussieht – jede Referenz ist ein „Eintrag“.
Beispiel: refs.bib Literaturdatenbank
author = {Krizhevsky, Alex and Sutskever, Ilya and Hinton, Geoffrey E.},
title = {ImageNet Classification with Deep Convolutional Neural Networks},
journal = {Communications of the ACM},
year = {2017},
volume = {60},
pages = {84--90}
}
@book{goodfellow2016, % Eintragstyp: Buch
author = {Goodfellow, Ian and Bengio, Yoshua and Courville, Aaron},
title = {Deep Learning},
publisher = {MIT Press},
year = {2016}
}
Das erste Element in den geschweiften Klammern ist derZitationsschlüssel(z. B. alexnet2012); im Text verwendet \cite{alexnet2012} ihn, um diese Referenz zu finden. Der Schlüsselname ist beliebig, muss aber im gesamten Dokument eindeutig sein.
| Eintragstyp | Zugehörige Referenz | Schlüsselfelder |
|---|---|---|
| @article | Zeitschriftenartikel | author、title、journal、year |
| @inproceedings | Konferenzbeitrag | author、title、booktitle、year |
| @book | Buch | author/editor、title、publisher、year |
| @phdthesis | Dissertation | author、title、school、year |
| @misc / @online | Webseiten, Berichte usw. | title、url、note、year |
Auf der Textseite gibt es nur zwei Befehle, die am Ende des Dokuments stehen:
Beispiel: Zitieren und Erzeugen des Literaturverzeichnisses
\begin{document}
Der Durchbruch im Deep Learning begann mit AlexNet~\cite{alexnet2012},
Für ein systematisches Lehrbuch siehe~\cite{goodfellow2016}。
\bibliographystyle{plain} % Bibliographiestil: einfacher numerischer Stil
\bibliography{refs} % Bibliographiedatenbankdatei (ohne die Erweiterung .bib)
\end{document}

Warum viermal kompilieren
Nach dem Hinzufügen von BibTeX umfasst die vollständige Kompilierung vier Schritte, die eine Pipeline zwischen den Dateien bilden.
| Schritt | Befehl | Zweck |
|---|---|---|
| 1 | xelatex main | Erzeugt main.aux und hält fest, welche Schlüssel im Text zitiert werden |
| 2 | bibtex main | Liest .aux und refs.bib und erzeugt das Literaturverzeichnis main.bbl |
| 3 | xelatex main | Setzt die .bbl-Inhalte in das Dokument |
| 4 | xelatex main | Zitationsnummern stabilisieren sich und werden korrekt angezeigt |
Der Grund, warum Zitate als [?] angezeigt werden, liegt in dieser Pipeline: Du hast bibtex nicht ausgeführt, oder du hast nach der Ausführung nicht noch zweimal kompiliert. Overleaf führt automatisch alle Schritte für dich aus; lokal wird latexmk -pdf main.tex empfohlen, um alles in einem Durchgang zu erledigen.
BibLaTeX: Eine modernere Wahl
BibTeX ist ein Veteran aus dem Jahr 1985; sein Nachfolger biblatex (gepaart mit dem Programm biber) ist in chinesischsprachigen Szenarien eher eine nähere Betrachtung wert.
| Dimension | BibTeX | biblatex + biber |
|---|---|---|
| Veröffentlichungszeitpunkt | 1985 | Seit 2009 |
| Unicode / Chinesisch | Eingeschränkte Unterstützung | Natives UTF-8 |
| Stilanpassung | Erfordert das Schreiben von .bst-Dateien; hohe Einstiegshürde | LaTeX-Syntax, intuitiv |
| Chinesischer Nationalstandard | Erfordert Konfiguration; etwas umständlich | Direkt unterstützt vom biblatex-gb7714-2015-Paket |
| Verwendungsempfehlung | Für alte Vorlagen oder bei Anforderung durch Zeitschriften verwenden | Bevorzugt für neue Projekte und chinesische Arbeiten |
Beispiel: Grundlegende biblatex-Nutzung
\addbibresource{refs.bib} % Hinweis: .bib-Erweiterung angeben
\begin{document}
Der Durchbruch im Deep Learning begann mit AlexNet~\cite{alexnet2012}。
\printbibliography[title=Literaturverzeichnis] % Literaturverzeichnis am Ende des Dokuments ausgeben
\end{document}
Ändern Sie den Befehl von bibtex zu biber, und der Rest der Kompilierungspipeline ist genau derselbe. Wenn Sie eine chinesische Abschlussarbeit schreiben, installieren Sie das Paket biblatex-gb7714-2015 und stellen Sie den Stil auf gb7714-2015 um, um das nationale Standardformat für Literaturverzeichnisse zu erfüllen.
Zusammenfassung
| Voraussetzung | Befehl |
|---|---|
| Ein Label erstellen | \label{prefix:name} (unmittelbar nach dem referenzierten Objekt) |
| Referenznummer / Seitenzahl / Gleichung | \ref、\pageref、\eqref |
| Hyperlinks | hyperref (zuletzt laden) |
| Literatur zitieren | \cite{key}; Literaturangaben in einer .bib-Datenbank speichern |
| Das Literaturverzeichnis generieren | BibTeX:\bibliography;biblatex:\printbibliography |
| Kompilierung mit einem einzigen Befehl | latexmk -pdf main.tex |