Ich versuche, eine Ellipse innerhalb einer halblogarithmischen pgfplots
Achse zu zeichnen. Die Ellipsenachsen sollten parallel zu den Koordinatenachsen sein, aber je nach den von mir gewählten Radien erscheint die Ellipse gedreht.
Hier ist ein MWE:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}
\pgfplotsset{width=7cm}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ymode=log]
\addplot coordinates{
(0,10) (1,300) (2,3347) (3,5000)
};
\draw
(axis cs:1,300) ellipse [
x radius = 1, y radius = 10];
\end{axis}
\end{tikzpicture}
\end{document}
das erzeugt
Wie kann ich die Ellipse an den Koordinatenachsen ausrichten, sodass diese parallel zu den Ellipsenachsen liegen?
Antwort1
Normalerweise versuche ich, normale Tikz-Aktionen erst NACH \end{axis} durchzuführen. Stattdessen speichere ich die Koordinaten für die spätere Verwendung.
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}
\pgfplotsset{width=7cm}
\newlength{\rx}
\newlength{\ry}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ymode=log]
\addplot coordinates{
(0,10) (1,300) (2,3347) (3,5000)
};
\coordinate (Center) at (axis cs:1,300);
\coordinate (Radius) at (axis cs:2,3000);% x+1, y*10 relative to Center
\end{axis}
\pgfextractx{\rx}{\pgfpointdiff{\pgfpointanchor{Radius}{center}}{\pgfpointanchor{Center}{center}}}%
\pgfextracty{\ry}{\pgfpointdiff{\pgfpointanchor{Radius}{center}}{\pgfpointanchor{Center}{center}}}%
\draw (Center) ellipse [x radius = \rx, y radius = \ry];
\end{tikzpicture}
\end{document}