Die Beschriftung „ma + b“ am Teilstrich auf der Y-Achse befindet sich links vom Teilstrich. Ich möchte sie rechts vom Teilstrich haben. (Der Befehl extra y tick labels={$ma+b$,anchor=east}
hat die Beschriftung nicht verschoben.)
\documentclass[10pt]{amsart}
\usepackage{tikz}
\usetikzlibrary{calc,angles,positioning,intersections,quotes,decorations.markings}
\usepackage{tkz-euclide}
\usetkzobj{all}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\begin{document}
\noindent\hspace*{\fill}
\begin{tikzpicture}
\begin{axis}[width=4in,axis equal image,
axis lines=middle,
xmin=-4,xmax=4,samples=101,
xlabel=$x$,ylabel=$y$,
ymin=-7,ymax=5.5,
restrict y to domain=-7:5.5,
%enlargelimits={abs=1cm},
axis line style={latex-latex},
ticklabel style={font=\tiny,fill=white},
xtick={\empty},ytick={\empty},
extra x ticks={-1},
extra x tick labels={$a$},
extra y ticks={-3},
extra y tick labels={$ma+b$,anchor=east},
xlabel style={at={(ticklabel* cs:1)},anchor=north west},
ylabel style={at={(ticklabel* cs:1)},anchor=south west}
]
%/pgfplots/xlabel shift={10pt};
\addplot[latex-latex,samples=101,domain=-2.5:3] {2*x - 1} node[right, pos=0.75,font=\footnotesize]{$y = mx + b$};
\draw [fill] (-1,-3) circle [radius=1.5pt];
\end{axis}
\end{tikzpicture}
\hspace{\fill}
\end{document}
Antwort1
Das Schlüssel-Wert-Paar anchor=east
hat an der Stelle, an der Sie es platziert haben, keine Auswirkung. Dies liegt daran, dass es als nächstes Element im Array behandelt wird extra y tick labels
, aber nie gesetzt wird, da nur ein Element (-3) in vorhanden ist extra y ticks
.
Beachten Sie auch, dass Sie anstelle von \hspace{\fill}
verwenden können \hfill
. Oder verwenden Sie in diesem Fall einfach \centering
einmal innerhalb der Gruppe, die Sie zentrieren möchten.
Wie dem auch sei, hier ist ein Ansatz mit yticklabel style={anchor=west}
und yticklabel shift=-4pt
. Es gibt schönere Tasten, um dies ohne manuelle Positionierung zu tun, aber leider funktionieren sie nur für die standardmäßigen Boxachsen. Ich habe auch mehrere unnötige Elemente aus dem MWE entfernt und die Position der Gleichungsbeschriftung angepasst, damit sie am Rand der Achse nicht abgeschnitten wird.
\documentclass[10pt]{amsart}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\centering
\begin{tikzpicture}
\begin{axis}[width=4in,axis equal image,
axis lines=middle,
xmin=-4,xmax=4,samples=101,
xlabel=$x$,ylabel=$y$,
ymin=-7,ymax=5.5,
restrict y to domain=-7:5.5,
%enlargelimits={abs=1cm},
axis line style={latex-latex},
ticklabel style={font=\tiny,fill=white},
xtick={\empty},ytick={\empty},
extra x ticks={-1},
extra x tick labels={$a$},
extra y ticks={-3},
extra y tick labels={$ma+b$},
yticklabel style={anchor=west},
yticklabel shift=-4pt,
xlabel style={at={(ticklabel* cs:1)},anchor=north west},
ylabel style={at={(ticklabel* cs:1)},anchor=south west}
]
%/pgfplots/xlabel shift={10pt};
\addplot[latex-latex,samples=101,domain=-2.5:3] {2*x - 1} node[right, pos=0.65,font=\footnotesize]{$y = mx + b$};
\draw [fill] (-1,-3) circle [radius=1.5pt];
\end{axis}
\end{tikzpicture}
\end{document}