是否有任何选项可以替换each nth point={100}
依赖于列值的内容?
我的表格是这样的:
x y
0 5
1 4
2 5
3 3
3 -3
2 -4
1 -1
0 0
我只想绘制低于 2 的 x 值。
(当然,这只是最小的情况,在完整的情况下,修改表格并不容易,而且我使用同一轴内的其他值)。
答案1
这是第一个选项,使用restrict x to domain=0:2
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat = newest}
\usepackage{pgfplotstable}
\pgfplotstableread{ % Read the data into a table macro
x y
0 5
1 4
2 5
3 3
3 -3
2 -4
1 -1
0 0
}\mydata
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot+[restrict x to domain=0:2] table [x=x,y=y]
{\mydata};
%
\end{axis}
\end{tikzpicture}
\end{document}
并使用xmax
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat = newest}
\usepackage{pgfplotstable}
\pgfplotstableread{ % Read the data into a table macro
x y
0 5
1 4
2 5
3 3
3 -3
2 -4
1 -1
0 0
}\mydata
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmax=2]
\addplot table [x=x,y=y]
{\mydata};
%
\end{axis}
\end{tikzpicture}
\end{document}
您总是有可能使用x expr
宏来编写一些复杂的比较程序,但我现在就不提了。