ymode=log を使用すると pgfplot が正しく動作しない

ymode=log を使用すると pgfplot が正しく動作しない

軸が通常の場合はプロットは正常に動作します。y 軸が対数スケールに変更された時点で、プロットの一部のみが表示されます。提供された dat ファイルには約 9000 個のポイントがあります。サポートしていただければ幸いです。ありがとうございます

\documentclass{standalone}
\usepackage{siunitx}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{verbatim}
\usetikzlibrary{decorations}
\usetikzlibrary{decorations.markings}
\usetikzlibrary{plotmarks}
\begin{document}


\begin{tikzpicture}
\begin{axis}[width=12cm,height=12cm,legend style={font=\scriptsize,draw=none,at={(0.825,0.9)},anchor=north},
xmin=0, xmax=10000,ymin=1e-8,ymax=1e4,   xtick={
    -3.14159,-1.5708,0,
    1.5708, 3.14159},
xticklabels={
    $-\pi$, $-\frac{\pi}{2}$,
    $0$,$\frac{\pi}{2}$, $\pi$},ytick={1e-8,1e4},
    xlabel={Non-dimensional wave vector, $\kappa$},
    ylabel={Frequency, $\omega$, \SI{}{\radian\per\second}}, mark repeat={15},domain=-3.14:3.14, restrict y to domain = 1e-8: 1e4,
 xmin=0, xmax=10000,
ymin = 1e-8, ymax = 1e4,ymode=log,log basis y=10]
\addplot [thick,color=blue] table{u_lmm.dat};  
\end{axis}
\end{tikzpicture}
\end{document}

答え1

データ ファイル (の一部) を提供していないため、コードはコンパイルできません。また、何が「間違っている」か、何が機能していないかを示す画像も示されていません。したがって、私たちがお手伝いできることはありません。提供されたコードは完全に正常に動作します...

% used PGFPlots v1.16
\documentclass[border=5pt]{standalone}
\usepackage{siunitx}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        width=12cm,
        height=12cm,
        xmin=0,
        xmax=10000,
        % (these `xticks` don't make much sense when `xmax=10000` ...)
        xtick={-3.14159,-1.5708,0,1.5708,3.14159},
        xticklabels={
            $-\pi$, $-\frac{\pi}{2}$,
            $0$,$\frac{\pi}{2}$, $\pi$
        },
        xlabel={Non-dimensional wave vector, $\kappa$},
        ymode=log,
        ymin=1e-8,
        ymax=1e4,
        ytick={1e-8,1e4},
        ylabel={Frequency, $\omega$, \SI{}{\radian\per\second}},
    ]
%        % (because you didn't provide any data ...
%        \addplot [thick,color=blue] table{u_lmm.dat};
        % ... I just tested with the min and max values of the axis)
        \addplot coordinates { (0,1e-8) (10000,1e4) };
    \end{axis}
\end{tikzpicture}
\end{document}

上記コードの結果を示す画像

関連情報