나는 Bool을 삽입하려고 시도했습니다 Title=true|false
.
\pgfplotsset{
%/pgfplots/.cd, % no effect
Title/.is choice,
Title/.style={title={A title.}},
}
Title
, Title=true
및 가 작동하지 않는 이유는 무엇 Title=false
이며 두 번 모두 타이틀을 얻나요?
무엇을 더 좋게 만들어야 합니까?
\documentclass[border=3.14pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\pgfplotsset{
%/pgfplots/.cd, % no effect
Title/.is choice,
Title/.style={title={A title.}},
}
\begin{tikzpicture}
\begin{axis}[Title=true]
\addplot[] {x} node[pos=0.5]{Has a title. :)};;
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[Title=false]
\addplot[red] {x} node[pos=0.5]{Has a title too. :(};
\end{axis}
\end{tikzpicture}
답변1
각 선택 사항에 대한 키를 정의하는 핸들러를 사용할 수 있으며 .is choice
, 각각의 가능한 선택 사항은 true
하위 false
키로 제공되어야 합니다.
\pgfplotsset{
Title/.is choice,
Title/true/.style={title={A title.}},
Title/false/.style={},
}
키를 부울 값으로 제한하려면 package 를 사용하여 etoolbox
핸들러를 사용할 수 있습니다 .is if
.
\pgfplotsset{Title/.is if,
Title/.code={\ifbool{#1}{\pgfplotsset{title={A title}}}{}}
}