zac
03-04-2012, 20:33
Hallo,
ich würde gerne mehrere Auslgeichsgeraden in einem Diagramm darstellen. Das funktioniert soweit ganz gut. Wenn ich nun aber die Steigung bzw. Funktion beider angeben will, dann gibt es mir zweimal die gleiche an
\documentclass[a4paper]{scrartcl} %Dokumentklasse - für kürzere Artikel und Aufsätze
\usepackage[ansinew]{inputenc} %deutsche Zeichen
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage[a4paper,left=20mm,right=20mm, top=25mm, bottom=25mm]{geometry}
%Seitenränder einstellen\usepackage{pgfplotstable}
\usepackage{pgfplotstable}
\begin{document}
\pagestyle{empty}
\noindent
Damit es etwas übersichtlicher wird, veranschaulichen wir unsere Ergebnisse in zwei Diagrammen:\\[1em]
\begin{tikzpicture}
\begin{axis}[legend pos=outer north east,
xmin=0,
xmax=10,
xlabel={i},
ylabel={$R_i=\ln\left(A_{m,i}/A_{m,0}\right)$},
ymin=-1.2,
ymax=0,
grid=major,
%restrict y to domain=-70:40, % an Stelle konkreter Wertebereiche für y
scale=1.5
]
\addplot[no marks] table [
y={create col/linear regression={y=Y}}]
{
X Y
0 0
1 -0.027398974
2 -0.055569851
3 -0.084557388
4 -0.114410351
5 -0.129677823
6 -0.14518201
7 -0.160930367
8 -0.193191229
9 -0.209720531
};
\addlegendentry{%
$\pgfmathprintnumber{\pgfplotstableregressiona} \cdot x
\pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$}
% \addlegendentry{Ausgleichsgerade für $m=0$}
\addplot[only marks]
coordinates {
(0,0)
(1,-0.027398974)
(2,-0.055569851)
(3,-0.084557388)
(4,-0.114410351)
(5,-0.129677823)
(6,-0.14518201)
(7,-0.160930367)
(8,-0.193191229)
(9,-0.209720531)
};
\addlegendentry{Messwerte $m=0$}
\addplot[red,no marks] table [
y={create col/linear regression={y=Y}}]
{
X Y
0 0
1 -0.060624622
2 -0.09237332
3 -0.176456437
4 -0.230523659
5 -0.268263987
6 -0.3074847
7 -0.348306694
8 -0.369360103
9 -0.435318071
};
\addlegendentry{%
$\pgfmathprintnumber{\pgfplotstableregressiona} \cdot x
\pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$}
% \addlegendentry{Ausgleichsgerade für $m=1$}
\addplot[red,only marks]
coordinates {
(0, 0)
(1, -0.060624622)
(2, -0.09237332)
(3, -0.176456437)
(4, -0.230523659)
(5, -0.268263987)
(6, -0.3074847)
(7, -0.348306694)
(8, -0.369360103)
(9, -0.435318071)
};
\addlegendentry{Messwerte $m=1$}
\end{axis}
\end{tikzpicture}
\end{document}
Ich bin leider aus dem pgfplotsmanual auch nicht schlau geworden. Ich würde nämlich nicht gern 5 verschiedene plots machen, nur um die funktion richtig anzeigen zu lassen.
ich würde gerne mehrere Auslgeichsgeraden in einem Diagramm darstellen. Das funktioniert soweit ganz gut. Wenn ich nun aber die Steigung bzw. Funktion beider angeben will, dann gibt es mir zweimal die gleiche an
\documentclass[a4paper]{scrartcl} %Dokumentklasse - für kürzere Artikel und Aufsätze
\usepackage[ansinew]{inputenc} %deutsche Zeichen
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage[a4paper,left=20mm,right=20mm, top=25mm, bottom=25mm]{geometry}
%Seitenränder einstellen\usepackage{pgfplotstable}
\usepackage{pgfplotstable}
\begin{document}
\pagestyle{empty}
\noindent
Damit es etwas übersichtlicher wird, veranschaulichen wir unsere Ergebnisse in zwei Diagrammen:\\[1em]
\begin{tikzpicture}
\begin{axis}[legend pos=outer north east,
xmin=0,
xmax=10,
xlabel={i},
ylabel={$R_i=\ln\left(A_{m,i}/A_{m,0}\right)$},
ymin=-1.2,
ymax=0,
grid=major,
%restrict y to domain=-70:40, % an Stelle konkreter Wertebereiche für y
scale=1.5
]
\addplot[no marks] table [
y={create col/linear regression={y=Y}}]
{
X Y
0 0
1 -0.027398974
2 -0.055569851
3 -0.084557388
4 -0.114410351
5 -0.129677823
6 -0.14518201
7 -0.160930367
8 -0.193191229
9 -0.209720531
};
\addlegendentry{%
$\pgfmathprintnumber{\pgfplotstableregressiona} \cdot x
\pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$}
% \addlegendentry{Ausgleichsgerade für $m=0$}
\addplot[only marks]
coordinates {
(0,0)
(1,-0.027398974)
(2,-0.055569851)
(3,-0.084557388)
(4,-0.114410351)
(5,-0.129677823)
(6,-0.14518201)
(7,-0.160930367)
(8,-0.193191229)
(9,-0.209720531)
};
\addlegendentry{Messwerte $m=0$}
\addplot[red,no marks] table [
y={create col/linear regression={y=Y}}]
{
X Y
0 0
1 -0.060624622
2 -0.09237332
3 -0.176456437
4 -0.230523659
5 -0.268263987
6 -0.3074847
7 -0.348306694
8 -0.369360103
9 -0.435318071
};
\addlegendentry{%
$\pgfmathprintnumber{\pgfplotstableregressiona} \cdot x
\pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$}
% \addlegendentry{Ausgleichsgerade für $m=1$}
\addplot[red,only marks]
coordinates {
(0, 0)
(1, -0.060624622)
(2, -0.09237332)
(3, -0.176456437)
(4, -0.230523659)
(5, -0.268263987)
(6, -0.3074847)
(7, -0.348306694)
(8, -0.369360103)
(9, -0.435318071)
};
\addlegendentry{Messwerte $m=1$}
\end{axis}
\end{tikzpicture}
\end{document}
Ich bin leider aus dem pgfplotsmanual auch nicht schlau geworden. Ich würde nämlich nicht gern 5 verschiedene plots machen, nur um die funktion richtig anzeigen zu lassen.