我正在使用Mathematica中的ListPlot绘制数据表。 我注意到图表上有一些渐近线,我不希望它们被绘制出来(即曲线之间的直线)。 我应该怎么做才能去掉这些直线?
我正在使用Mathematica中的ListPlot绘制数据表。 我注意到图表上有一些渐近线,我不希望它们被绘制出来(即曲线之间的直线)。 我应该怎么做才能去掉这些直线?
t = Table[Tan[i], {i, -Pi, Pi, .01}];
ListPlot[#, Joined -> True] & /@ {t, t /. x_ /; Abs@x > 10 -> None}
编辑
更加健壮:
t = Table[Tan[i], {i, -Pi, Pi, .01}];
ao = AbsoluteOptions[ListPlot[t, Joined -> True],PlotRange]/. {_ -> {_,x_}} ->x;
ListPlot[t /. x_ /; (x < ao[[1]] || x > ao[[2]]) -> None, Joined -> True]
以下内容翻译自Mark McClure在这里的帖子: 如何注释ListPlots中的多个数据集
t = Table[Tan[i], {i, -Pi, Pi, .01}];
plot = ListLinePlot[t];
DeleteCases[plot, Line[_?(Length[#] < 4 &)], Infinity]
t = Table[Tan[i], {i, -Pi, Pi, .01}];
plot = ListLinePlot[t];
Position
Position[plot, Line[___], Infinity]
{{1, 1, 3, 2}, {1, 1, 3, 3}, {1, 1, 3, 4}, {1, 1, 3, 5}, {1, 1, 3, 6}}
使用 Part
:
plot[[1, 1, 3, 5 ;; 6]] = Sequence[]; Show[plot]