x 刻度標籤消失

x 刻度標籤消失

當我更改 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)?

答案1

我透過改變解決了這個問題

axis x line=middle,

axis lines=middle,

這相當於

axis x line=middle,
axis y line=middle,

現在我可以看到 x 軸上的刻度標籤。不知道為什麼這有效。

在此輸入影像描述

相關內容