Seite 1 von 1

Problem mit Literaturverzeichnis und Pgfplots

Verfasst: Mo 16. Nov 2015, 12:49
von Ramanujan
Ich hab ein merkwürdiges Problem mit dem Literaturverzeichnis. Wenn ich meine gesamte Arbeit kompiliere tauchen bei den Referenzen (\cite{...}) nur Fragezeichen auf und das Literaturverzeichnis fehlt. Wenn ich einen Teil der Arbeit weglasse, klappt alles, so wie es soll.

Ich hab den Code jetzt weitestgehend reduziert: Das Problem ist ein Pgfplots-Diagramm. Wenn ich es weglasse, werden die Referenzen angezeigt, ansonsten nicht. Das Diagramm enthält 18 Kurven, also relativ viel. Wenn man nur fünf einzeichnen lässt, tauchen die Referenzen wieder auf.

Hat jemand eine Idee, woran das liegt und was ich dagegen tun kann? Ich würde ungerne auf die 18 Kurven verzichten.

Im Anhang ist ein Minimalbeispiel, falls man das so nennen kann. In der Einleitung.tex tauchen Referenzen auf, die work.tex enthält das problematische Diagramm.

Wenn jemand eine Idee hat, wäre das super. Schonmal danke im Voraus.

Verfasst: Mo 16. Nov 2015, 13:27
von Johannes_B
Latexmk: I WON'T RUN 'bibtex main' because I don't find the following files:
../Literatur/literatur.bib


http://texwelt.de/wissen/fragen/569/was ... ich-dieses

Verfasst: Mo 16. Nov 2015, 13:31
von Ramanujan
oh, das tut mir Leid, da ist mir ein Fehler beim Erstellen des Minimalbeispiels passiert.

Die korrigierte Version ist im Anhang.

Verfasst: Mo 16. Nov 2015, 13:51
von u_fischer
Kompiliert bei mir ohne Probleme. Zeige mal deine log-Datei.

Verfasst: Mo 16. Nov 2015, 14:01
von Ramanujan
Werden auch die Referenzen in der Einleitung angezeigt?

Die Log-Datei ist im Anhang.

Ich hab auch mal die pdf hochgeladen.

Verfasst: Mo 16. Nov 2015, 14:28
von u_fischer
Hm. Also man kann das Problem deutlich verkleinern (Anmerkung benutze nicht \include in der Präambel, es muss \input{header} heißen):
\documentclass[a4paper,11pt,twoside,ngerman,color]{book}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\cite{DnaSimilarity2007})

\begin{figure}[p]
\pgfplotsset{footnotesize,width=6.5cm,compat=1.8}
%\pgfplotsset{footnotesize,samples=10}
\begin{center}
\begin{tabular}{rr}
\begin{tikzpicture}
\begin{axis}[
xmin=-53,xmax=53,
mark options={solid},
%ymin=0,
title={$n = 100, e = 0{,}5m = 42$},
%xlabel=Überlappungsbreit $\upsilon$,
ylabel style={align=center},
ylabel={Wahrscheinlichkeit},
%xticklabel=
%	\pgfmathparse{100*\tick}
%	\pgfmathprintnumber{\pgfmathresult}\,\%,
yticklabel=
	\pgfkeys{/pgf/fpu}\pgfmathparse{100*\tick}
	\pgfmathprintnumber{\pgfmathresult}\,\%,
yticklabel style={/pgf/number format/.cd,fixed,precision=1,fixed zerofill},
scaled ticks=false,
xtick={-50,-25,0,25,50},
minor x tick num={4},
%ytick={0.923,0.924,...,0.928},
%ytick={0.072,0.073,...,0.077},
legend columns=6,
legend entries={$o = 1n$,$o = 1{,}1n$,$o = 1{,}2n$,$o = 1{,}3n$,$o = 1{,}4n$,$o = 1{,}5n$,$o = 1{,}6n$,$o = 1{,}8n$,$o = 2n$,$o=2{,}2n$,$o=2{,}4n$,$o=2{,}6n$,$o=2{,}8n$,$o=3n$,$o=3{,}5n$,$o=4n$,$o=4{,}5n$,$o=5n$},
legend to name=leg:theo:win:sim,
legend cell align=left,
]
\draw[ultra thin, gray!50]
	(axis cs:0,\pgfkeysvalueof{/pgfplots/ymin}) --
	(axis cs:0,\pgfkeysvalueof{/pgfplots/ymax});
\draw[ultra thin, gray!50]
	(axis cs:\pgfkeysvalueof{/pgfplots/xmin},0) --
	(axis cs:\pgfkeysvalueof{/pgfplots/xmax},0);
\addplot[thick, color=yellow!70!red, smooth] table[x=over,y=100] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=red!50!yellow, smooth] table[x=over,y=110] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=red, smooth] table[x=over,y=120] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=red!40!magenta, smooth] table[x=over,y=130] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=magenta, smooth] table[x=over,y=140] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=magenta!83!blue, smooth] table[x=over,y=150] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=magenta!66!blue, smooth] table[x=over,y=160] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=blue!50!magenta, smooth] table[x=over,y=180] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=blue, smooth] table[x=over,y=200] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=blue!66!cyan, smooth] table[x=over,y=220] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=cyan!55!blue, smooth] table[x=over,y=240] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=cyan!77!blue, smooth] table[x=over,y=260] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=cyan, smooth] table[x=over,y=280] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=cyan!60!green, smooth] table[x=over,y=300] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=green!60!cyan, smooth] table[x=over,y=350] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=green, smooth] table[x=over,y=400] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=green!50!yellow, smooth] table[x=over,y=450] {data/theo_win_rlng100_e42.dat};
\addplot[thick, color=yellow!66!green, smooth] table[x=over,y=500] {data/theo_win_rlng100_e42.dat};
\end{axis}
\end{tikzpicture}
\end{tabular}
\ref*{leg:theo:win:sim}
\end{center}
\caption{Wahrscheinlichkeiten, einen Read nicht zu finden für unterschiedliche Konfigurationen. Die Überschrift der Diagramm gibt die Readlänge $n$ und die Anzahl $e$ der fehlerhaften $q$-Gramme an. Der Fensterabstand $o$ hängt von der Farbe der jeweiligen Kurve ab, die genauen Werte sind in der Legende gezeigt. Auf der x-Achse wurde jeweils die Überlappungsbereite $\upsilon$ variiert. Die Fensterlänge $w$ ist gleich $o + \upsilon$.}
\label{fig:theo:win:sim}
\end{figure}

\bibliographystyle{gerabbrv}
\bibliography{literatur/literatur}
\end{document}
Wenn man bei diesem Dokument mit miktex bibtex aufruft, dann erhält man
This is BibTeX, Version 0.99d (MiKTeX 2.9)
The top-level auxiliary file: main.aux
Buffer size exceeded!Drücken Sie eine beliebige Taste . . .
Der Grund ist, dass pgfplots eine 26.373 lange Zeile in die aux-Datei schreibt, und bibtex damit überfordert ist. Mit TeXLive 2015 geht es (daher lief es mir zuerst), wahrscheinlich ist dort der Buffer größer, aber so eine Zeilenlänge ist m.E. absurd, also wäre ein Bugreport bei pgfplots sinnvoll.

Edit: Ich habe einen Bugreport gemacht: https://sourceforge.net/p/pgfplots/bugs/97/.

Als Workaround fällt mir derzeit nur ein, auf legend to name zu verzichten, oder biblatex/biber statt bibtex zu benutzen, oder auf texlive umzusteigen.

Verfasst: Mo 16. Nov 2015, 16:10
von u_fischer
Ein weiterer Workaround könnte sein, bibtex8 statt bibtex zu benutzen.

Verfasst: Mo 16. Nov 2015, 17:16
von Ramanujan
Ich hab versucht auf Biblatex umsteigen, aber da muss man sich länger mit beschäftigen, bis alles so aussieht, wie man es haben möchte. Deshalb bin doch erstmal bei Bibtex geblieben.

Zweiter Versuch: Ich hab jetzt auf legend-to-name verzichtet und die Legende von Hand über eine Tabelle generiert. Es sieht genauso aus wie mit pgfplots mit dem Unterschied, dass jetzt die Referenzen funktionieren. Also alles super!

Danke für eure Hilfe.

Hier der neue Code:
\begin{figure}[p]
\pgfplotsset{footnotesize,width=6.5cm,compat=1.8}
%\pgfplotsset{footnotesize,samples=10}
\begin{center}
\setlength{\tabcolsep}{2pt}
\begin{tabular}{rr}
\begin{tikzpicture}
\begin{axis}[
xmin=-53,xmax=53,
mark options={solid},
%ymin=0,
title={$n = 100, e = 0{,}5m = 42$},
%xlabel=Überlappungsbreit $\upsilon$,
ylabel style={align=center},
ylabel={Wahrscheinlichkeit},
%xticklabel=
%	\pgfmathparse{100*\tick}
%	\pgfmathprintnumber{\pgfmathresult}\,\%,
yticklabel=
	\pgfkeys{/pgf/fpu}\pgfmathparse{100*\tick}
	\pgfmathprintnumber{\pgfmathresult}\,\%,
yticklabel style={/pgf/number format/.cd,fixed,precision=1,fixed zerofill},
scaled ticks=false,
xtick={-50,-25,0,25,50},
minor x tick num={4},
%ytick={0.923,0.924,...,0.928},
%ytick={0.072,0.073,...,0.077},
%legend columns=6,
%legend entries={$o = 1n$,$o = 1{,}1n$,$o = 1{,}2n$,$o = 1{,}3n$,$o = 1{,}4n$,$o = 1{,}5n$,$o = 1{,}6n$,$o = 1{,}8n$,$o = 2n$,$o=2{,}2n$,$o=2{,}4n$,$o=2{,}6n$,$o=2{,}8n$,$o=3n$,$o=3{,}5n$,$o=4n$,$o=4{,}5n$,$o=5n$},
%legend to name=leg:theo:win:sim:a,
%legend cell align=left,
]
\draw[ultra thin, gray!50] 
	(axis cs:0,\pgfkeysvalueof{/pgfplots/ymin}) -- 
	(axis cs:0,\pgfkeysvalueof{/pgfplots/ymax});
\draw[ultra thin, gray!50] 
	(axis cs:\pgfkeysvalueof{/pgfplots/xmin},0) -- 
	(axis cs:\pgfkeysvalueof{/pgfplots/xmax},0);
\addplot[thick, color=yellow!70!red, smooth] table[x=over,y=100] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim1}
\addplot[thick, color=red!50!yellow, smooth] table[x=over,y=110] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim2}
\addplot[thick, color=red, smooth] table[x=over,y=120] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim3}
\addplot[thick, color=red!40!magenta, smooth] table[x=over,y=130] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim4}
\addplot[thick, color=magenta, smooth] table[x=over,y=140] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim5}
\addplot[thick, color=magenta!83!blue, smooth] table[x=over,y=150] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim6}
\addplot[thick, color=magenta!66!blue, smooth] table[x=over,y=160] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim7}
\addplot[thick, color=blue!50!magenta, smooth] table[x=over,y=180] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim8}
\addplot[thick, color=blue, smooth] table[x=over,y=200] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim9}
\addplot[thick, color=blue!66!cyan, smooth] table[x=over,y=220] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim10}
\addplot[thick, color=cyan!55!blue, smooth] table[x=over,y=240] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim11}
\addplot[thick, color=cyan!77!blue, smooth] table[x=over,y=260] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim12}
\addplot[thick, color=cyan, smooth] table[x=over,y=280] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim13}
\addplot[thick, color=cyan!60!green, smooth] table[x=over,y=300] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim14}
\addplot[thick, color=green!60!cyan, smooth] table[x=over,y=350] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim15}
\addplot[thick, color=green, smooth] table[x=over,y=400] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim16}
\addplot[thick, color=green!50!yellow, smooth] table[x=over,y=450] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim17}
\addplot[thick, color=yellow!66!green, smooth] table[x=over,y=500] {data/theo_win_rlng100_e42.dat};
\label{leg:theo:win:sim18}
\end{axis}
\end{tikzpicture}
\end{tabular}
\begin{tabular}{|llllll|}
\hline
\ref*{leg:theo:win:sim1} $o = 1n$ &
\ref*{leg:theo:win:sim2} $o = 1{,}1n$ &
\ref*{leg:theo:win:sim3} $o = 1{,}2n$ &
\ref*{leg:theo:win:sim4} $o = 1{,}3n$ &
\ref*{leg:theo:win:sim5} $o = 1{,}4n$ &
\ref*{leg:theo:win:sim6} $o = 1{,}5n$ \\
\ref*{leg:theo:win:sim7} $o = 1{,}6n$ &
\ref*{leg:theo:win:sim8} $o = 1{,}8n$ &
\ref*{leg:theo:win:sim9} $o = 2n$ &
\ref*{leg:theo:win:sim10} $o=2{,}2n$ &
\ref*{leg:theo:win:sim11} $o=2{,}4n$ &
\ref*{leg:theo:win:sim12} $o=2{,}6n$ \\
\ref*{leg:theo:win:sim13} $o=2{,}8n$ &
\ref*{leg:theo:win:sim14} $o=3n$ &
\ref*{leg:theo:win:sim15} $o=3{,}5n$ &
\ref*{leg:theo:win:sim16} $o=4n$ &
\ref*{leg:theo:win:sim17} $o=4{,}5n$ &
\ref*{leg:theo:win:sim18} $o=5n$ \\
\hline
\end{tabular}
%\ref*{leg:theo:win:sim:a}
\end{center}
\caption{Wahrscheinlichkeiten, einen Read nicht zu finden für unterschiedliche Konfigurationen. Die Überschrift der Diagramm gibt die Readlänge $n$ und die Anzahl $e$ der fehlerhaften $q$-Gramme an. Der Fensterabstand $o$ hängt von der Farbe der jeweiligen Kurve ab, die genauen Werte sind in der Legende gezeigt. Auf der x-Achse wurde jeweils die Überlappungsbereite $\upsilon$ variiert. Die Fensterlänge $w$ ist gleich $o + \upsilon$.}
\label{fig:theo:win:sim}
\end{figure}