
Ich versuche, die Linie hinzuzufügen, die durch die Punkte (1000,-8,5) und (10000,-27,79) verläuft. Das ist das Latex, das ich bisher habe.
\begin{figure}[h!]
\begin{center}
\begin{tikzpicture}
\begin{axis}[
xmode=log,
xlabel={Frequency (Hz)},
ylabel={Gain (db)},
xmin=0, xmax=20000,
ymin=-30, ymax=10,
xtick={0,100,1000,10000},
ytick={10,0,-10,-20,-30},
legend pos=north west,
ymajorgrids=true,
grid style=dashed,
]
\addplot[
color=blue,
mark=square,
only marks,
]
coordinates {
(100,-0.18)(1000,-8.5)(2000,-14.15)(4000,-19.83)(10000,-27.79)
};
% add plot of equation going through points (1000,-8.5) and (10000,-27.79) here
\end{axis}
\end{tikzpicture}
\end{center}
\end{figure}
Alle Gleichungen, die durch diese beiden Punkte verlaufen, werden im Diagramm nicht korrekt angezeigt. Ich vermute, das liegt an der logarithmischen Skala. Ich habe es mit 49,37-19,29*x versucht, aber das funktioniert nicht. Diese Gleichung wird erreicht, indem man log(x) anwendet, bevor man die Linie berechnet, die die beiden Punkte verbindet. Wie erhalte ich eine Linie, die durch diese Punkte verläuft?
Antwort1
Wie wäre es mit
\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xmode=log,
xlabel={Frequency (Hz)},
ylabel={Gain (db)},
xmin=0, xmax=20000,
ymin=-30, ymax=10,
xtick={0,100,1000,10000},
ytick={10,0,-10,-20,-30},
legend pos=north west,
ymajorgrids=true,
grid style=dashed,
legend pos=north east
]
\addplot[
color=blue,
mark=square,
only marks,
]
coordinates {
(100,-0.18)(1000,-8.5)(2000,-14.15)(4000,-19.83)(10000,-27.79)
};
\addlegendentry{data}
\addplot[color=orange,no marks] coordinates {(1000,-8.5) (10000,-27.79)};
\addlegendentry{fit}
\end{axis}
\end{tikzpicture}
\end{document}