andi67
26-10-2009, 02:26
Hallo,
ich habe ein paar Fragen und Probleme mit der Verwendung von gnuplot und LaTeX.
Zum einen will ich gleich mal vorwegnehmen das ich keine Ahnung habe von den ganzen Terminal settings und ähnlichem habe. Mein System ist Windows (Vista 64) und ich nutze Winshell mit Miktex (ver 2.7) [außerdem habe ich noch texniccenter installiert].
1. Zunächst habe ich versucht ein gnuplot Diagramm (ein einfacher Plot einer Testfunktion) mit "file->output device: latex" als terminal Settings, in eine Txt Datei ausgeben zu lassen. Das hat auch funktioniert, hier sind aber die ersten Probleme aufgetaucht: Der Code war ziemlich lang und es sah so aus als würde der Code das Diagramm quasi nachbilden, jeden einzellnen Punkt usw. wenn das wirklich so ist, dann könnte das bei meinem eigentlichen Vorhaben, nämlich ein Diagramm aus mind. 100.000 Werteparten in einem Latex erzeugten pdf Dokument unterzubringen, zu einem ziemlich unübersichtlichtem Unterfangen werden. Das Diagramm würde im Latexcode dann ja 99% meines Quellcodes ausmachen, ganz davon abgesehen das ich 10 solche Diagramme in das Dokument einfügen will. Naja auch davon abgesehen, hat mir das kompilieren des texfiles sowieso ein paar Fehler angezeigt:
Hamilton.tex(924): Fehler: ! Missing $ inserted.
Hamilton.tex(924): Fehler: ! Extra }, or forgotten $.
Hamilton.tex(924): Fehler: ! Missing $ inserted.
Hamilton.tex(924): Fehler: ! Missing } inserted.
die Zeile auf die es sich bezieht ist mitten im von Qnuplot erzeugtem Code (Ausschnitt - 3. Zeile):
\put(231.0,860.0){\rule[-0.200pt]{293.657pt}{0.400pt}}
\put(70,495){\makebox(0,0){h^{2}}}
\put(840,29){\makebox(0,0){t/U}}
Das Diagramm wurde zwar angezeigt, aber da ich die Fehler ungern stehen lassen will, habe ich das ganze erstmal abgebrochen (aber auch weil ich nach einer Alternative suche um nicht 1 Millionen Zeilen Code nur für die Diagramme im Texfile zu haben).
2. Mein neuer Versuch, war die Verwendung von gnuplottex.
Ich habe das Paket eingebunden mit:
\usepackage{gnuplottex}
und dachte ich kann nun die plots direkt in das tex File schreiben und muss nicht die abermillionen Zeilen an Code für jedes Diagramm nehmen. Natürlich gab es wieder ein Problem:
Package gnuplottex Warning: Shell escape not enabled.
Ich habe mich etwas informiert und habe erfahren das ich dem Latex Compiler noch ein Argument mitliefern muss: "--enable-write18"
das habe ich also mit angefügt, und trotzdem der Fehler. Dann habe ich sichergestellt, dass der path des /gnuplot/bin Verzeichnisses der entsprechenden Umgebungsvariablen angehängt wurde und wgnuplot in gnuplot umbenannt (ich kann nun auch mit der Kommandozeile von überall 'gnuplot' aufrufen). Doch wieder brachte dies nichts, der Fehler blieb.
Dann habe ich gelesen, dass der Fehler wohl angeblich immer da bleibt, selbst wenn Shell escape aktiviert ist. Doch in meinem Fall ist es wohl wirklich nicht angeschaltet, denn es werden keine Diagramme angezeigt.
Dann habe ich mir neben Winshell sogar noch Texniccenter installiert und das ganze mit diesem Programm versucht. Doch leider, das gleiche Ergebnis (hier habe ich natürlich auch die Argumente für den Compiler angepasst).
Naja ich bin jetzt etwas ratlos. Kann mir jemand helfen?
ich habe ein paar Fragen und Probleme mit der Verwendung von gnuplot und LaTeX.
Zum einen will ich gleich mal vorwegnehmen das ich keine Ahnung habe von den ganzen Terminal settings und ähnlichem habe. Mein System ist Windows (Vista 64) und ich nutze Winshell mit Miktex (ver 2.7) [außerdem habe ich noch texniccenter installiert].
1. Zunächst habe ich versucht ein gnuplot Diagramm (ein einfacher Plot einer Testfunktion) mit "file->output device: latex" als terminal Settings, in eine Txt Datei ausgeben zu lassen. Das hat auch funktioniert, hier sind aber die ersten Probleme aufgetaucht: Der Code war ziemlich lang und es sah so aus als würde der Code das Diagramm quasi nachbilden, jeden einzellnen Punkt usw. wenn das wirklich so ist, dann könnte das bei meinem eigentlichen Vorhaben, nämlich ein Diagramm aus mind. 100.000 Werteparten in einem Latex erzeugten pdf Dokument unterzubringen, zu einem ziemlich unübersichtlichtem Unterfangen werden. Das Diagramm würde im Latexcode dann ja 99% meines Quellcodes ausmachen, ganz davon abgesehen das ich 10 solche Diagramme in das Dokument einfügen will. Naja auch davon abgesehen, hat mir das kompilieren des texfiles sowieso ein paar Fehler angezeigt:
Hamilton.tex(924): Fehler: ! Missing $ inserted.
Hamilton.tex(924): Fehler: ! Extra }, or forgotten $.
Hamilton.tex(924): Fehler: ! Missing $ inserted.
Hamilton.tex(924): Fehler: ! Missing } inserted.
die Zeile auf die es sich bezieht ist mitten im von Qnuplot erzeugtem Code (Ausschnitt - 3. Zeile):
\put(231.0,860.0){\rule[-0.200pt]{293.657pt}{0.400pt}}
\put(70,495){\makebox(0,0){h^{2}}}
\put(840,29){\makebox(0,0){t/U}}
Das Diagramm wurde zwar angezeigt, aber da ich die Fehler ungern stehen lassen will, habe ich das ganze erstmal abgebrochen (aber auch weil ich nach einer Alternative suche um nicht 1 Millionen Zeilen Code nur für die Diagramme im Texfile zu haben).
2. Mein neuer Versuch, war die Verwendung von gnuplottex.
Ich habe das Paket eingebunden mit:
\usepackage{gnuplottex}
und dachte ich kann nun die plots direkt in das tex File schreiben und muss nicht die abermillionen Zeilen an Code für jedes Diagramm nehmen. Natürlich gab es wieder ein Problem:
Package gnuplottex Warning: Shell escape not enabled.
Ich habe mich etwas informiert und habe erfahren das ich dem Latex Compiler noch ein Argument mitliefern muss: "--enable-write18"
das habe ich also mit angefügt, und trotzdem der Fehler. Dann habe ich sichergestellt, dass der path des /gnuplot/bin Verzeichnisses der entsprechenden Umgebungsvariablen angehängt wurde und wgnuplot in gnuplot umbenannt (ich kann nun auch mit der Kommandozeile von überall 'gnuplot' aufrufen). Doch wieder brachte dies nichts, der Fehler blieb.
Dann habe ich gelesen, dass der Fehler wohl angeblich immer da bleibt, selbst wenn Shell escape aktiviert ist. Doch in meinem Fall ist es wohl wirklich nicht angeschaltet, denn es werden keine Diagramme angezeigt.
Dann habe ich mir neben Winshell sogar noch Texniccenter installiert und das ganze mit diesem Programm versucht. Doch leider, das gleiche Ergebnis (hier habe ich natürlich auch die Argumente für den Compiler angepasst).
Naja ich bin jetzt etwas ratlos. Kann mir jemand helfen?