
산점도에 사용할 사용자 정의 마크를 만들려고 합니다.pgfplots: 사용자 정의 표시를 사용하는 범례에 문제가 있습니다.진행 방법에 대한 힌트를 제공했지만 이 표시를 세 번째 변수에 의존하게 만드는 방법을 모르겠습니다. 예를 들어, 아래 코드는 데이터의 열 에서 \pgfdeclareplotmark
레이블 \node
(아래에 하드 코딩한 {a}
) 을 가져오는 것이 가능합니까?label
\documentclass{article}
\usepackage{pgfplots}\pgfplotsset{compat=1.16}
\usepackage{pgfplotstable}
\pgfplotstableread{
y x label
1 1 a
2 2 b
3 3 c
}\testdata
\pgfdeclareplotmark{myshape} {\node[draw, rounded corners=2pt, color=blue, fill=white] {a};}
\begin{document}
\begin{tikzpicture}
\begin{axis}[]
\addplot[ mark=myshape] table[x=x, y=y] {\testdata};
\end{axis}
\end{tikzpicture}
\end{document}
이것이 제가 라벨을 통해 달성하고 싶은 것입니다. 도움을 주셔서 감사합니다.
답변1
대신 사용할 수 있는 옵션이 있을까요 nodes near coords
?
\documentclass{article}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.16}
\pgfplotstableread{
y x label
1 1 a
2 2 b
3 3 c
}\testdata
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot[
point meta=explicit symbolic,
nodes near coords,
nodes near coords align=center,
nodes near coords style={draw, rounded corners=2pt, color=blue, fill=white}
] table[x=x, y=y, meta=label] {\testdata};
\end{axis}
\end{tikzpicture}
\end{document}