Wahl der Einbindungs-Methode von Gnuplot-Diagrammen

Tabellen und Grafiken erstellen und anordnen


die_nase
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 50
Registriert: So 3. Mai 2015, 21:05

Wahl der Einbindungs-Methode von Gnuplot-Diagrammen

Beitrag von die_nase »

Hallo zusammen,

in Zukunft stehen bei mir einige Projekte an, bei denen ich auf die Darstellung von Funktionen und Datensätzen angewiesen bin. Konkret sollen Datensätze (bis max. 1000 Daten) in einem 2D-Graph dargestellt werden und diese durch eine Funktion angenähert (gefittet) werden.

Ich habe im Internet verschiedene Möglichkeiten gefunden, wie man dies mit Latex umsetzen kann. Jedoch sind mir noch nicht die Vor- bzw. Nachteile der einzelnen Methoden (pgfplots mit tikspicture, gnuplottex, die Erstellung mit gnuplot, Export und Einbindung mittels \input{xxx.tex}) klar.

Was könntet ihr denn empfehlen? - Lohnt sich eine Einarbeitung in das (komplexe und umfangreiche?) pgfplots?
Was sollte man von solchen Erklärungen halten? - http://www.disk0s1.de/posts/latex/ein-p ... -pgfplots/ - Wie kommt sowas, denn ich dachte, dass die Berechnung mit Gnuplot (und somit unabhängig von Latex) stattfindet.

Mir ist schon eine korrekte und saubere mathematische Darstellung der Daten wichtig, dennoch soll es auch schön aussehen :wink:
Wenn sich das gegenseitig ausschließt, dann bin ich auch bereit mich in zwei verschiedene "Systeme" einzuarbeiten..jedoch wäre ich dann wiederum um eure Tipps und Erfahrungen dankbar, in WAS ich mich denn nun einarbeiten kann.

Viele Grüße und schönen Abend
die_Nase

sudo
Forum-Guru
Forum-Guru
Beiträge: 459
Registriert: Mi 3. Okt 2012, 11:32

Beitrag von sudo »

Was hältst du denn von der Erklärung im Link? Wenn du das nicht glaubst, probiere das Beispiel doch selbst einmal aus und verändere dann die verwendete Formel. Vielleicht musst du dann ein wenig suchen, um eine solche Abweichung zu finden.
Der größte Aufwand den du bei der Variante pgfplots mit Gnuplot hast, ist Gnuplot zu installieren und shell-escape einzurichten. Sonst ist es analog zu nur pgfplots verwenden.
Ich habe in meiner Diplomarbeit pgfplots ohne Gnuplot verwendet. Mir sind dabei keine solchen Fehler aufgefallen. Ich hatte aber auch vorwiegend numerische Daten und nur sehr wenige analytische Funktionen geplottet.
Ein vollständiges Minimalbeispiel (VM) zu erzeugen, ist gar nicht schwer und hilft ganz oft, Fehler selber zu finden. Ohne bekommt man selten gute Antworten. Anleitungen findest du z.B. im golatex Wiki auf TeXWelt oder minimalbeipiel.de
Außerdem hilft das Lesen dieser Seite, Fragen richtig zu stellen.

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Re: Wahl der Einbindungs-Methode von Gnuplot-Diagrammen

Beitrag von cgnieder »

die_nase hat geschrieben:Was könntet ihr denn empfehlen? - Lohnt sich eine Einarbeitung in das (komplexe und umfangreiche?) pgfplots?
Hier würde ich ohne zu zögern mit Ja antworten: für eine gute und flexibel gestaltbare Darstellung von Plots ist pgfplots unübertroffem.
die_nase hat geschrieben:Was sollte man von solchen Erklärungen halten? - http://www.disk0s1.de/posts/latex/ein-p ... -pgfplots/ - Wie kommt sowas, denn ich dachte, dass die Berechnung mit Gnuplot (und somit unabhängig von Latex) stattfindet.
Nun, Tobias schreibt es eigentlich recht deutlich: bei halbwegs komplexen Funktionen sollte man die Rechenarbeit mit gnuplot machen lassen, alles andere kann man weiterhin mit pgfplots machen. Das ist, wenn man gnuplot installiert hat und weiß, wie man mit shell escape kompiliert, kein großer zusätzlicher Aufwand:
\addplot[mark=none, color=black]  plot gnuplot[samples=500,id=eins]{x^2/(1-x^2)};
\addplot[mark=none, color=red]  plot[samples=500,smooth]{x^2/(1-x^2)}; % ohne gnuplot
Grüße
Clemens
Paketauthor

Gast

Beitrag von Gast »

Wenn du gnuplot mit LaTeX verwenden möchtest empfehle ich dir das cairolatexterminal. Bei dem kann man auswählen, ob der Plot als PDF oder eps erzeugt werden soll. Gleichzeitig wird eine TeXdatei erstellt, die einfach über \input{} ins Dokument eingebunden werden kann. In dieser Datei ist dann auch angegeben, wo TeX in der Abbildung Text einfügen soll. Das hat den Vorteil, das LaTeX die Textausgabe überlassen wird, somit auch die Schriftwahl, und nur der Plot als Grafik vorliegt.

Ich zeige mal, wie ich das in der Vergangenheit gemacht habe.
set term cairolatex pdf size 12cm,10cm color solid
set output 'ausgabe.tex'
replot
Bevor ich das cairolatexterminal kennengelernt hatte, habe ich das tikzterminal verwendet. Prizipiell funktioniert dieses auch sehr gut, jedoch steigert sich die Kompilierungszeit erheblich.

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Aber immer daran denken, du kannst mit pgfplots numerische Werte und Funktionen plotten. Das gilt auch für eine lineare Regression.

Aber die tatsächliche Auswertung und Analyse, musst du an anderer Stelle machen. Da geht gnuplot, octave, ... Ach; es gibt so viel um mathematische Funktionen oder irgendwelche Daten auszuwerten.
Bist du damit fertig, kannst du deine Ergebnisse mit pgfplots für die Arbeit aufhübschen.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

die_nase
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 50
Registriert: So 3. Mai 2015, 21:05

Beitrag von die_nase »

Zunächst einmal: Vielen vielen Dank für eure Antworten!

@sudo: Als ich den Artikel gelesen habe, machte es mich irgendwie stutzig. Ich habe dann gestern Abend und heute morgen noch mal genauer gelesen. Anscheinend ist es möglich mithilfe von 'plot ...' die Berechnungen mit Tex zu machen, was manchmal zu solchen Effekten führen kann. Aber es gibt auch die Möglichkeit 'plot gnuplot...' zu verwenden, wobei da die Berechnung anscheinend mit Gnuplot erledigt wird (ausgelagert sozusagen). Das war auch das, was Clemens in seinem Beitrag geschrieben hat, wenn ich es richtig verstanden habe.

Wie beurteilst du denn die Ergebnisse, die du mit pgfplots in deiner Diplomarbeit erzielt hast? Hast du vielleicht einen Vergleich zu gnuplottex o.ä.?

@Clemens (cgnieder): Genau, nach näheren Lesen habe ich auch den Unterschied (plot vs plot gnuplot) gefunden.


Ist die Schrift in der Grafik denn immer auch die, die ich in dem Latex-Dokument verwende (also wenn mein Text bspl. komplett kursiv und pink wär, wäre er es dann in der Grafik bei den Titeln, Beschriftungen auch)?
Oder wäre das nur bei cairolatex so?

@Johannes_B: Also würdest du Berechnungen und Darstellungen immer Trennen? - Ich komme mit Gnuplot bspl. fast genauso schnell zu meiner Regressionsgeraden wie mit Excel (nur leider mache ich die sonstigen Berechnungen auch mit Excel).


Meine Frage wäre noch: Sollte man eher den Code mit tikspicture direkt in das Latex-Dokument schreiben, oder mittels Gnuplot bzw. cairolatex ein Bild erzeugen, welches dann per \input{xxx} eingebunden wird?

Durch die letzte Methode hätte man natürlich wieder mehr Dateien, die zur Unübersichtlichkeit führen könnten, oder? - Was ist davon denn die "schlankere" Methode?

Viele Grüße
die_Nase

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Ich würde dir empfehlen erst die Auswertung, die Berechnungen und alles nötige (Kaffee trinken, Pause machen) in einem Schritt zu machen. Wenn du dir im Klaren bist, was du da berechnet hasst und was das ganze bedeutet, dann kannst du es in deinen Projekten präsentieren. Die Berechnung erfolgt ja auch nicht bei jedem Durchlauf aufs neue, sodas du mit tikz-externalize Zeit sparen kannst.


Es sei denn, es werden Daten generiert, welche ohne große Auswertung (nur Regression) geplottet werden müssen. Wo also ein großes Maß an Automatismus dahintersteckt.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

die_nase
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 50
Registriert: So 3. Mai 2015, 21:05

Beitrag von die_nase »

Hm, das wird wahrscheinlich von Fall zu Fall unterschiedlich sein,, danke Johannes_B.

Dennoch die Frage, wenn es nur um die Aufbereitung (also das "Hübschmachen" geht), den Tikscode direkt ins Dokument schreiben, oder mit Gnuplot im Terminal erstellen, Dateien exportieren bzw. dann ins Verzeichnis kopieren und einbinden? - Ich sehe auf den ersten Blick keine Vorteile in dem externen Einbinden?!

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Datenpunkte exportieren, und von pgfplots plotten lassen. Du kannst mit gnuplot gute Ergebnisse erzielen, aber meiner Meinung nach ist das anstrengender und exportierte TikZ-code (ja, mit Z) ist meist grausam.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

die_nase
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 50
Registriert: So 3. Mai 2015, 21:05

Beitrag von die_nase »

Leider noch mal eine kurze Rückfrage:

Habe ich es richtig verstanden, dass man Plots sowohl mit Tikz als auch mit pgfplots erstellen kann? - Wobei ich aber auch dachte, dass pgfplots eine Art "Unterbau" von Tikz sei.

Wenn ich beispielsweise den Code von hier: http://www.texample.net/tikz/examples/scatterplot/ mit diesem vergleiche http://pgfplots.net/tikz/examples/oscillator/, dann wird einmal nur "draw" verwendet, in dem anderen Beispiel wird dann eine axis-Umgebung eingefügt; einerseits mit \plot oder mit \addplot ein Graph gezeichnet. Mir ist der Unterschied noch nicht ganz klar. Klärt mich bitte jemand auf?

..und mir ist aufgefallen, dass bei der axis-Umgebung (oder durch einen anderen Befehl?) ein Quadrat um den Graph bzw. den Plot erzeugt wird. Wie ist es denn richtig, bzw. wann verwendet man einen Rahmen und wann die "einfachen" Koordinatenachsen? - Gibt es dafür bestimmte Richtlinien (in wissenschaftlichen Veröffentlichungen findet man ja unterschiedliche Versionen).

Antworten