Diagramme erstellen in LaTeX - Matplotlib vs tikzplotlib vs pythontex

X

xyzUpdate

Erfahrenes Mitglied
97
Hallo zusammen,

ich frage mich wie ich am besten mit LaTeX Diagramme erzeugen kann.
(will davon weg Excel Diagramme einzufügen, habe bezüglich Diagramme in Latex noch keine Erfahrung).

Ich habe etwas recherchiert und bin auf folgende Möglichkeiten gestoßen:
  • mit Python und matplotlib -> speichern als PDF?
  • mit Python und tikzplotlib -> direkt TikZ-Code erzeugen
  • pythontex (innerhalb LaTeX Pythoncode ausführen)
Welches Vorgehen würdet ihr bevorzugen und warum?
(Ziel: Liniendiagramm -> "Messpunkte und Linie durch")

Nachfolgend das Ergebnis mit tikzplotlib:
Pythonskript

Python:
import matplotlib.pyplot as plt
import numpy as np
import tikzplotlib

plt.plot([1.0, 1.2, 2.0, 3.2], [289, 320, 333, 384], color='black', marker='o')
plt.xticks(np.arange(1.0, 3.4, step=0.2))
plt.xlabel("Zeit in s")
plt.ylabel("Temperatur in K")
plt.grid(True)

tikzplotlib.save("beispiel.tex")

Ausgabe der beispiel.tex in ein Minimaldokument eingebunden
Code:
\documentclass[fontsize=12pt,ngerman]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis background/.style={fill=white!89.8039215686275!black},
axis line style={white},
tick align=outside,
tick pos=left,
x grid style={white},
xlabel={Zeit in s},
xmajorgrids,
xmin=0.89, xmax=3.31,
xtick style={color=white!33.3333333333333!black},
y grid style={white},
ylabel={Temperatur in K},
ymajorgrids,
ymin=284.25, ymax=388.75,
ytick style={color=white!33.3333333333333!black}
]
\addplot [semithick, black, mark=*, mark size=3, mark options={solid}]
table {%
1 289
1.2 320
2 333
3.2 384
};
\end{axis}
\end{tikzpicture}
\end{document}

Zu diesem Codebeispiel noch die Fragen:
  • Wie stelle ich in der Achsenbeschriftung Komma statt Punkt ein?
  • ich hatte Fälle da wurde in der Achsenbeschriftung 1x10^4 anstatt 10000 angezeigt. Wie lässt sich das umstellen?
  • Wie lässt sich die Schriftart konsistent zu LaTeX einstellen (Einheiten bezüglich siunitx)?
  • Warum ist durch das Pythonskript automatisch der Gridhintergrund grau einsgestellt?
 
LaTeX ist eine ungeeignete Sprache zum Erstellen von Diagrammen. (Persönlich halte ich es in allen Belangen für überschätzt.)

Warum muss es ausgerechnet Python sein?
 
da ich mit meinen Messergebnissen Vektorgrafiken erstellen will ist mir nur Python (mit MATLAB würds vermutlich auch gehen) eingefallen.
Falls du ein anderes Programm kennst, bitte posten :)
 
Ich würde da zu R greifen.
 
  • Danke
Reaktionen: xyzUpdate
ok, danke. Werde ich mir mal anschauen. Wobei ich vermutlich keine krassen statistischen Auswertungen mache :D
 
Musst du ja nicht - aber du kannst. Python wäre sonst ebenfalls deutlich zu fett für "nur mal was auswerten" und ist darin nicht mal so konsistent wie R. ;)
 

Ähnliche Themen

KeyserSoze
Antworten
13
Aufrufe
573
DOT2010
DOT2010
say_hello
Antworten
6
Aufrufe
549
say_hello
say_hello
S
Antworten
6
Aufrufe
540
Klaus986
K
Zurück
Oben Unten