
在下面的 MWE 中,為什麼我的圖中沒有箭頭?
\documentclass[12pt, border=1pc]{standalone}
\RequirePackage{tikz}
\RequirePackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{decorations.markings}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis x line=middle,
axis y line=middle,,
xtick={1.0, 3.0},
ytick={1.0, 3.0},
samples=100,
xmin=-1,xmax=4.5,
ymin=-1,ymax=4.5]
\addplot[domain={-1:4}]{x};
\addplot[domain={-1:4},
postaction={decorate,
decoration={markings,
mark=at position 2 with {\arrow[thick]{>}},
mark=at position 3 with {\arrowreversed[thick]{>}}}
}
]{((x-3)^2 * (x-1)^2) + x};
\end{axis}
\end{tikzpicture}
\end{document}
答案1
您對 Y 的範圍限制與您的marks
部位相結合正在截斷箭頭。
我通過註釋任何不必要的箭頭來調試它。
\begin{tikzpicture}
\begin{axis}[axis x line=middle,
% axis y line=middle,
% xtick={1.0, 3.0},
% ytick={1.0, 3.0},
% samples=100,
% xmin=-1,xmax=4.5,
% ymin=-1,ymax=4.5,
]
% \addplot[domain={-1:4}]{x};
\addplot[domain={-1:4},
postaction={decorate, decoration={
markings,
mark=at position 0.65 with {\arrow{>};}
}}
]{((x-3)^2 * (x-1)^2) + x};
\end{axis}
\end{tikzpicture}
箭頭正好位於我認為是繪製曲線的 65% 的位置。
透過玩一下程式碼:
\begin{tikzpicture}
\begin{axis}[
% axis x line=middle,
% axis y line=middle,
% xtick={1, 3.0},
% ytick={1.0, 3.0},
samples=100,
xmin=-1,xmax=4,
ymin=-1,ymax=4.5,
]
% \addplot[domain={-1:4}]{x};
\addplot[domain={-1:4.5},
postaction={decorate, decoration={
markings,
mark=at position 0.65 with {\arrow{>};}
}}
]{((x-3)^2 * (x-1)^2) + x};
\end{axis}
\end{tikzpicture}