我正在使用这个代码,取自我的问题这里x
。当两个值具有相同的值时,就会出现问题y
。然后label
我想在坐标附近写入的与另一个重叠。我该如何解决这个问题,即使具体针对这个特定的输入?
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}
\usepackage{filecontents}
\begin{filecontents*}{mydata.dat}
x_0 f(x) label
%some comment
0.5 0.24 0
0.5 0.21 0.1
0.5 0.18 0.5
0.5 0.21 0.9
\end{filecontents*}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
title = My title,
xlabel = {$x$},
ylabel = {$y$},
legend entries = {A},
every node near coord/.append style={anchor=south west},
]
\addplot [nodes near coords, mark = *, blue, point meta = explicit symbolic] %table {Measurements/A.dat};
table[meta = label] {mydata.dat};
\end{axis}
\end{tikzpicture}
\end{document}
相关问题在于这里但是,我希望在坐标附近写的标签用逗号分隔,而其余部分则保持不变。
答案1
您可以使用percusse 的这个答案并调整锚点
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}
\usepackage{filecontents}
\begin{filecontents*}{mydata.dat}
x_0 f(x) label anchor
%some comment
0.5 0.24 0 east
0.5 0.21 0.1 west
0.5 0.18 0.5 east
0.5 0.21 0.9 east
\end{filecontents*}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
title = My title,
xlabel = {$x$},
ylabel = {$y$},
legend entries = {A},
point meta=explicit symbolic,
]
\addplot [nodes near coords, mark = *, blue, point meta = explicit symbolic,visualization depends on={value \thisrow{anchor}\as\myanchor},
every node near coord/.append style={anchor=\myanchor}] %table {Measurements/A.dat};
table[meta = label] {mydata.dat};
\end{axis}
\end{tikzpicture}
\end{document}
不过,您必须anchor
在数据中添加一个包含锚点值的额外列。
在使用north west
等时,请使用额外的一对括号,例如
\begin{filecontents*}{mydata.dat}
x_0 f(x) label anchor
%some comment
0.5 0.24 0 west
0.5 0.21 0.1 {north west}
0.5 0.18 0.5 west
0.5 0.21 0.9 {south west}
\end{filecontents*}