pgfplot の xtick のマスク付きスケール係数

pgfplot の xtick のマスク付きスケール係数

factorsのスケール係数は、xtickldots マスクでは機能しません...。この問題には解決策がありますか?

\documentclass[tikz]{standalone}
\usepackage{pgfplots}


%===============================================================================
\begin{document}
\noindent
\begin{tikzpicture}[
    declare function ={
        factor=2;
    }
    ]
    \begin{axis}[
        %xtick = {-2*factor,2*factor}, % This one work
        %xtick = {-2,...,2}, % This one work
        xtick = {-2*factor,...,2*factor}, % This one doesn't work
        ]
        \addplot+[blue, no marks, domain={-6:6}] {x^2};
    \end{axis}
\end{tikzpicture}


\end{document}

答え1

設定する必要があります/pgf/foreach/parse=true。pgfmanual v3.1.4の989ページを参照してください。

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

これは機能します(少なくともこの場合は)。

\documentclass[tikz]{standalone}
\usepackage{pgfplots}

%===============================================================================
\begin{document}
\noindent
\begin{tikzpicture}[/pgf/foreach/parse=true,%<-added
    declare function ={
        factor=2;
    }
    ]
    \begin{axis}[
        %xtick = {-2*factor,2*factor}, % This one work
        %xtick = {-2,...,2}, % This one work
        xtick={-2*factor,...,2*factor}, % This one works now
        ]
        \addplot+[blue, no marks, domain={-6:6}] {x^2};
    \end{axis}
\end{tikzpicture}
\end{document}

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

をやり過ぎないようにすることをお勧めします。parse=true整数の場合は困難に遭遇したケースがあります。

万が一、他の何らかのループ (おそらく内部ループ) が原因でこの提案で問題が発生した場合に備えて、値が自動的に解析されるxtickminおよび を使用することもできます。xtickmax

\documentclass[tikz]{standalone}
\usepackage{pgfplots}

%===============================================================================
\begin{document}
\noindent
\begin{tikzpicture}[
    declare function ={
        factor=2;
    }
    ]
    \begin{axis}[
        xtickmin=-2*factor,
        xtickmax=2*factor,
        ]
        \addplot+[blue, no marks, domain={-6:6}] {x^2};
    \end{axis}
\end{tikzpicture}
\end{document}

関連情報