
Ich muss einige Punkte in einem Diagramm darstellen; nur eine einfache Liste von x- und y-Werten und diese dann mit Liniensegmenten verbinden. Derzeit erstelle ich das Diagramm in Excel und importiere das Bild in Latex und es sieht nicht gut aus. Gibt es eine Möglichkeit, Koordinaten nur mit Latex darzustellen?
Antwort1
Datenpunkte können direkt mit dem data
Befehl aus der datavisualization
Bibliothek eingegeben werden. Dasselbe gilt, wenn Sie die Funktion anstelle der Datenpunkte haben. Hier sind einige Beispiele aus dem TikZ-PGF Handbuch:
\documentclass[border=2mm,tikz]{standalone}
\usetikzlibrary{datavisualization}
\begin{document}
\begin{tikzpicture}
\datavisualization [school book axes, visualize as smooth line]
data {
x, y
-1.5, 2.25
-1, 1
-.5, .25
0, 0
.5, .25
1, 1
1.5, 2.25
};
\end{tikzpicture}
\end{document}
Das Ändern des Achsenstils auf wissenschaftlich kann beispielsweise ein anderes Erscheinungsbild ergeben:
\datavisualization [scientific axes, all axes={grid}, visualize as smooth line]
Wenn Sie die Funktion zur Hand haben, kann dies außerdem ganz einfach sein:
\documentclass[border=2mm,tikz]{standalone}
\usetikzlibrary{datavisualization.formats.functions}
\begin{document}
\begin{tikzpicture}
\datavisualization [school book axes, visualize as smooth line]
data [format=function] {
var x : interval [-1.5:1.5] samples 7;
func y = \value x*\value x;
};
\end{tikzpicture}
\end{document}
mit dem gleichen Ergebnis wie der Eintrag „Datenpunkte“:
Antwort2
Hier ist ein Beispiel mit pgfplots
. Die Daten können auch aus einer Datei gelesen csv
oder mit Formeln berechnet werden.
\documentclass[border=2mm]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot coordinates {
(1, 1)
(2, 4)
(3, 9)
(4, 16)
(5, 25)
};
\end{axis}
\end{tikzpicture}
\end{document}
Antwort3
Hier ein kleines Beispiel, das mit erstellt wurde, PSTricks
anstatt mit TikZ
. Trotzdem verstehe ich nicht, warum viele Benutzer bereits auf die Möglichkeit verzichten, Grafiken mit zu erstellen PSTricks
.
\documentclass[pstricks,border=12pt,12pt]{standalone}
\usepackage{pst-plot}
\usepackage{pst-eucl}
\psset{algebraic,arrows=->}
\def\f{x^2}
\begin{document}
\begin{pspicture}(-5,-3)(5,5)
\psaxes[linewidth=.5pt,linecolor=darkgray](0,0)(-4,-1)(3,4)[$x$,0][$y$,90]
\psplot[linecolor=magenta]{-5}{5}{\f}
\pstGeonode[PosAngle=-30,PointNameSep=15pt,PointName={{\scriptstyle(0,.5)},{\scriptstyle(1,f(2))}}]
(0,0.5){F}(*1 {\f(x)}){A}
\end{pspicture}
\end{document}
Antwort4
Wenn Sie sich ein wenig mit R auskennen, ist knitr eine gute Option:
\documentclass{article}
\begin{document}
<<echo=F, fig.cap="One simple plot.", dev='tikz'>>=
df <- data.frame(x = c(1,2,3,4,5,6,7), y= c(1,2,4,8,16,32,64))
plot(df, pch=16, col="red")
lines(df$x,df$y, col="red", lwd=3)
@
\end{document}