Problem mit pgfplots+gnuplot

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Problem mit pgfplots+gnuplot

von Thomas01 » Fr 15. Mär 2013, 13:01

Nachdem ich mich heute nochmal mit dem Problem beschäftigt habe, ist es gelöst und ich kann meine LaTeX-Graphen über gnuplot laufen lassen :D

PdfLaTeX hatte nach wie vor keinen Zugriff auf gnuplot. Das lag daran, dass die Umgebungsvariable, obwohl ich sie korrekt eingefügt habe (Bei mir lautete sie "C:\Program Files (x86)\gnuplot\bin"), nicht bekannt war.

Ich habe heute gnuplot neu installiert, und im Installationsfenster gab es eine Option anzuhacken, durch die automatisch ein PATH erstellt werde. Nach der Installation dann ins TeXstudio gegangen, --shell-escape eingefügt, das Beispiel aus meinem ersten Post getestet und es funktionierte. Als ich gnuplot zum ersten Mal installierte, hatte ich diese Option nicht mit einem Häckchen versehen, weil mir nicht bewusst war, dass dieser PATH wichtig ist (und standardmäßig war das Häckchen auch nicht gesetzt).

Um zu sehen, warum es mit meinem gestrigen Versuch, den Path nachträglich einzufügen, nicht geklappt hat, bin ich dann nochmal ins Fenster "Umgebungsvariablen für dieses Konto bearbeiten gegangen". Dort ist mir aufgefallen, dass es nicht nur unter "Benutzervariablen für *Mein_Name*" eine Variable namens Path gibt (wo ich den Pfad eingefügt hatte), sondern auch unter Systemvariablen. Und anscheinend war der Pfad bei der Installation genau dort eingefügt worden, und nicht unter Benutzervariablen. Ich war gestern gar nicht auf den Gedanken gekommen, dass man den Pfad möglicherweise dort einfügen muss, weil die Systemvariablen "ausgegraut" und nicht anklickbar sind (Ich vermute mal, dies ist eine Standardeinstellung, um den User daran zu hindern, etwas am Computer zu vermurksen).

Grüße,
Thomas

von Thomas01 » Do 14. Mär 2013, 19:58

Dieser verehrte Herr scheinte dasselbe Problem zu haben wie ich: http://de.comp.text.tex.narkive.com/hdy ... -gestartet

Nun, ich werde das Thema erstmal ruhen lassen, ich fürchte, es stiehlt mir sonst nur noch mehr Zeit, ohne letztendlich eine Lösung zu haben.

Ich möchte mich trotzdem herzlich für die Hilfe bedanken, durch die es eigentlich hätte funktionieren sollen... shell-escape arbeitet, der Path ist gesetzt, so wie es sein sollte. Naja, manchmal stellt sich der Computer einfach auf stur :?

Sollte ich meinen Fehler doch noch rauskriegen, werde ich posten, an was es gelegen hat.

Viele Grüße,
Thomas

von Thomas01 » Do 14. Mär 2013, 19:50

TeXstudio scheint dann wohl nicht das Problem zu sein :( Das cmd-Fenster spuckt mir am Ende dieselbe Fehlermeldung aus,
"Sorry, the gnuplot-result file "Minimalbeispiel.sin.table could not be found. Maybe you need to enable the shell-escape feature?" usw....

Könnte es sein, dass irgendetwas das Leerzeichen in "Program Files" nicht mag?!

von u_fischer » Do 14. Mär 2013, 19:35

Geht mal im Windows explorer zum Ordner in dem sich deine test.tex befindet. Drücke die Shift-Taste und klicke gleichzeitig die rechte Maustaste auf den Ordner. Dann müsste eigentlich im Kontextmenu ein Eintrag "Eingabeaufforderung hier öffnen" erscheinen. Klicke drauf.

Dann tippe in der Eingabeaufforderung
pdflatex --shell-escape dateiname-der-tex-datei
Wenn es damit klappt, dann ist texstudio dein Problem.

von Thomas01 » Do 14. Mär 2013, 19:07

Hmm, ich habe den Dateipfad von gnuplot.exe soweit drangehängt, er wird dann auch in diesem cmd-Fenster hinter Path= angezeigt, leider immer noch dieselbe Fehlermeldung im TeXstudio.

in der gnuplot\binary-file habe ich ja 3 verschiedene gnuplot-Anwendungen: Einmal "gnuplot" (Konsolen-Anwendung), dann "wgnuplot" (Windowsandwendung mit Menü") und noch "wgnuplot_pipes (Windowsanwendung mit Möglichkeit, Programme auszuführen). Diese Information habe ich aus dem Internet...
Macht es irgendeinen Unterschied, dass diese Anwendungen unterschiedliche Namen haben/welche von denen ich lade? Wenn ich gleich das gesamte "C:\Program Files\gnuplot\bin\" lade, funktioniert es auch nicht...

Außerdem habe ich das hier gefunden http://www.cond-mat.physik.uni-mainz.de ... uplot.html, das beschreibt dasselbe wie die Anweisungen, die du mir gibst. Also ich denke mal, dass das Problem fast gelöst ist, vielleicht bin ich zu tollpatschig um den Dateipfad richtig einzugeben und muss noch rumbasteln bis es klappt, auch wenn mir das komisch vorkäme :?:

von u_fischer » Do 14. Mär 2013, 18:33

Thomas01 hat geschrieben:Wie du richtig vermutest hast, befindet sich "C:\Program Files\gnuplot\bin\gnuplot.exe" nicht in der Liste hinter Path=... !
Nun, dann geh nochmal zu dem "Umgebungsvariablen für dieses Konto bearbeiten", und hänge den Pfad an den miktex/bin-Pfad dran (durch Semikolon getrennt).

von Thomas01 » Do 14. Mär 2013, 18:29

Wie du richtig vermutest hast, befindet sich "C:\Program Files\gnuplot\bin\gnuplot.exe" nicht in der Liste hinter Path=... !

Dein vorgegebener Code liefert mir im Log runsystem(dir)...executed.

von u_fischer » Do 14. Mär 2013, 18:19

Wenn "gnuplot" ein Fenster öffnet (ob weiß oder schwarz), dann wird es gefunden und sollte daher eigentlich schon im Pfad sein.

Aber du kannst es nochmal prüfen. Gib "cmd" im Ausführendialog ein. Dann öffnet sich die Eingabeaufforderung. Tippe dort "set" ein. Dann erscheinen einige Informationen unter anderem steht dort "Path=" mit einer Ordnerliste. Befindet sich "C:\Program Files\gnuplot\bin\gnuplot.exe" darunter?

Wenn ja, liegt dein Problem woanders.

Kompiliere mal das hier mit --shell-escape:
\documentclass{article} 

\begin{document} 
\immediate\write18{dir}
\end{document}
Schau dann in die log-Datei. Steht dort (gegen Ende):

runsystem(dir)...executed.

oder

runsystem(dir)...disabled (restricted).


[/code]

von Thomas01 » Do 14. Mär 2013, 17:59

Wenn ich im Ausführen-Fenster "gnuplot" eingebe, öffnet sich ein Fenster namens gnuplot.exe (Dateipfad: C:\Program Files\gnuplot\bin\gnuplot.exe), ein einfaches Fenster mit weißen Buchstaben auf schwarzem Hintergrund.

Das scheint mir allerdings etwas anderes zu sein als das eigentliche gnuplot-Programm, dieses ist ja ein weißes Fenster, mit allen möglichen Optionen in der oberen Leiste (File, Plot, Expressions, Functions, ...)

Zu der Variablen-Geschichte:

Ich bin in einem Fenster der Systemsteuerung gelandet, das "Umgebungsvariablen für dieses Konto bearbeiten" heißt. Da gibt es eine Variable namens "Path", diese hat den Wert
C:\Users\*Mein Name*\AppData\Roaming\MiKTeX\2.9\miktex\bin\
Jedoch ist mir nicht klar, was du mit "PATH-Variable ergänzen" meinst bzw. was ich jetzt zu tun habe. (Entschuldige, ich bin nicht der Schnellste, wenn es um Sachen am Computer geht, die sich jenseits von Internet und Microsoft Word abspielen :lol:)

Vielen Dank für deine Antwort schonmal,
Thomas

ERGÄNZUNG: Das "schwarze Fenster" heißt in meinem Ordner tatsächlich gnuplot, das weiße hingegen wgnuplot. Muss ich da auch noch was umbenennen? Davon hatte ich schon gelesen...

von u_fischer » Do 14. Mär 2013, 17:29

Nun, dein Dokument ist korrekt und "--shell-escape" ist auch richtig. Also ist wahrscheinlich einfach gnuplot nicht im Pfad.

Was passiert, wenn du in der Eingabeaufforderung oder im Ausführen-Befehl nur "gnuplot" eingibst. Wird es gefunden?

Wenn nicht gib mal im Suchfenster von win7 "umgebungsvariable" ein. Das sollte dich zur Stelle in der Systemsteuerung führen, wo du die PATH-Variable ergänzen kannst.

Nach oben