この厄介な問題を克服できません。pgfplot\ifnum
の座標の周りにラベルの位置を設定します。これでうまくいきますしかし:
変数が特定の値より大きいか小さいかしかテストできません\coordindex
。インデックスが数値に等しいかどうかをテストできるようにしたいです。\ifnum\coordindex=0
最初に使用した場合、Tex でこのエラーが発生します。
欠落 = \ifnum に挿入されました。\end{axis}
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}
\pgfplotsset{
name nodes near coords/.style={
every node near coord/.append style={
anchor=center, %
name=#1\coordindex, % naming of npdes with running index
alias=#1last,
},
},
name nodes near coords/.default=coordnode
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[%
width=\textwidth,
height=.3\textheight,
scale mode = scale uniformly,
scale only axis,
xmin=-200,
xmax= 250,
ymin=- 50,
ymax= 400,
axis x line = middle,
axis y line = left,
grid = none,
xtick = {-200, -100, ...,300},
ytick = {-100, 0, ...,400},
minor tick num = 1,
ytick align = outside,
extra x ticks={0},
extra x tick style={grid=major},
xlabel={x / mm},
ylabel={y / mm},
]
\addplot+[
color=orange,
ultra thick,
shape=circle,
nodes near coords={},
every node near coord/.append style={
label={
[black!80, label distance=-1ex]
\ifnum\coordindex<1
5
\else
% \ifnum\coordindex=3
% -135
% \else
180-\coordindex*45
% \fi
\fi
:$p_{\coordindex}$
}
},
name nodes near coords=p
]
table{%
0 0
-79.9393 236.8749
143.0014 350.0007
143.0014 300.0000
200.0008 300.0000
};
\end{axis}
\end{tikzpicture}
\end{document}
私もifthen
パッケージで試してみましたが、うまくいきませんでした。誰かこの問題の簡単な解決策を知っていますか? 何が間違っているのでしょうか? ドキュメントによると、これは発生しないはずです。
おそらく、皆さんの中に、xlabel が設定されているのと同じ方法で、ylabel を y ラベルの上部および/または横に印刷する方法についてのヒントを持っている人がいるかもしれません。
答え1
これはなぜ \ifnum は TikZ スタイル定義内では機能しないのでしょうか?しかし、状況は異なります。
を処理する際label={...}
、PGF は を探します=
。回避策としては、これを非表示にします。
every node near coord/.append style={
label={
[black!80, label distance=-1ex]
\ifnum\coordindex<1
5
\else
\ifnum\coordindex\equals 3
-135
\else
180-\coordindex*45
\fi
\fi
:$p_{\coordindex}$
}
},
ここで、は\equals
前文で次のように定義されています。
\newcommand{\equals}{=}
別の可能性:
every node near coord/.append style={
label={
[black!80, label distance=-1ex]
\numbercompare{\coordindex<1}
{5}
{\numbercompare{\coordindex=3}{-135}{180-\coordindex*45}}%
:$p_{\coordindex}$
}
},
これには
\usepackage{expl3}
\ExplSyntaxOn
\cs_set_eq:NN \numbercompare \int_compare:nTF
\ExplSyntaxOff