當我更改 LaTeX 程式碼中的一個選項時,圖中的 x 刻度標籤就會消失。
這是我原來的程式碼:
\documentclass{article}
\usepackage{fp}
\usepackage{pgfplots}
\pgfplotsset{width=15cm, compat=1.12}
\newcommand{\tG}{20}
\newcommand{\xI}{150}
\newcommand{\vL}{16.67}
\newcommand{\aA}{1.2}
\newcommand{\aB}{1.5}
\FPeval\vResult{\aB * \vL / (\aA + \aB)}
\newcommand{\vS}{\vResult}
\FPeval\xResult{\xI - (\vS)^2 / (2*\aB)}
\newcommand{\xS}{\xResult}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xlabel=$x_G$,ylabel=$v_G$,
domain=0:\xI,
y domain=0:20,
enlargelimits=false,
view={0}{90}]
\addplot3[surf,shader=interp]
{\tG - x/\vL + (\vL-y)^2/(2*\aA*\vL)};
\addplot3[contour gnuplot={draw color=black},thick]
{\tG - x/\vL + (\vL-y)^2/(2*\aA*\vL)};
\addplot3[black,
quiver={
u={-1/\vL},
v={-(\vL-y)/(\aA*\vL)},
scale arrows=2,
},
-stealth,samples=15]
{\tG - x/\vL + (\vL-y)^2/(2*\aA*\vL)};
\addplot[red]
{\vL};
\addplot[red,samples=101]
{sqrt( (\xI - x)*(2*\aB) )};
\addplot[mark=x, mark size=5] coordinates {(\xS,\vS)} node[label={[label distance=0cm]45:{$(x^*,v^*)$}}]{} ;
\end{axis}
\end{tikzpicture}
\end{document}
和我的原始輸出
當我透過添加一行來更改程式碼時,它就變成了
\begin{tikzpicture}
\begin{axis}[
axis x line=middle,
...
這就是結果
如您所見,x 軸刻度標籤消失了,我不知道為什麼。我認為這可能與我使用 3D 繪圖有關。我有什麼想法可以拿回我的標籤(並確保 x 軸位於 y=0)?