Tikz 軸の y 線 = 上の目盛りが表示されない

Tikz 軸の y 線 = 上の目盛りが表示されない

次のコードがあります:

\RequirePackage{luatex85}
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\usepackage{bm}
\usepackage{tikz}
\usepackage{graphicx}

\pgfplotsset{every non boxed x axis/.append style={x axis line style=-}, every non boxed y axis/.append style={y axis line style=-}}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    axis x line=top,
    axis y line=middle,
    xmin=0, xmax=1.0,
    ymin=0, ymax=1.0,
    xtick={0, 0.2, 0.4, 0.6, 0.8, 1.0},
    ytick={0, 0.2, 0.4, 0.6, 0.8, 1.0},
]
\end{axis}
\end{tikzpicture}
\end{document}

ytick 1.0 (またはそのラベル) が表示されません。どうすれば修正できますか?

答え1

序文に次の文を追加します。

\pgfplotsset{axis y line*/center/.code={%
    \def\pgfplots@yaxislinesnum{1}%
    \def\pgfplots@ytickposnum{2}%
    \let\pgfplots@yticklabel@pos\pgfutil@empty
}}

完全なコード:

\RequirePackage{luatex85}
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\usepackage{bm}
\usepackage{tikz}
\usepackage{graphicx}

\pgfplotsset{every non boxed x axis/.append style={x axis line style=-}, every non boxed y axis/.append style={y axis line style=-}}
\makeatletter   
\pgfplotsset{
    axis y line*/center/.code={\def\pgfplots@yaxislinesnum{1}\def\pgfplots@ytickposnum{2}\let\pgfplots@yticklabel@pos\pgfutil@empty},
}
\makeatother

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    axis x line=top,
    axis y line=middle,
    xmin=0, xmax=1.0,
    ymin=0, ymax=1.0,
    xtick={0, 0.2, 0.4, 0.6, 0.8, 1.0},
    ytick={0, 0.2, 0.4, 0.6, 0.8, 1.0},
]
\end{axis}
\end{tikzpicture}
\end{document}

答え2

axis y line=leftの代わりにaxis y line=middle

ここに画像の説明を入力してください

\RequirePackage{luatex85}
\documentclass[tikz]{standalone}
\usepackage{pgfplots} % loads tikz, which loads graphicx
\usepackage{bm}

\pgfplotsset{every non boxed x axis/.append style={x axis line style=-}, every non boxed y axis/.append style={y axis line style=-}}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    axis x line=top,
    axis y line=left,
    xmin=0, xmax=1.0,
    ymin=0, ymax=1.0,
    xtick={0, 0.2, 0.4, 0.6, 0.8, 1.0},
    ytick={0, 0.2, 0.4, 0.6, 0.8, 1.0},
]
\end{axis}
\end{tikzpicture}
\end{document}

答え3

コメントアウトするとaxis y line=middle動作します。必要な場合はaxis y line=middle、y 範囲に少しだけ追加してみてください。設定はymax=1.0000001動作します。

関連情報