我正在尝试绘制一些实验数据。当我使用 tikzpicture/pgfplots 绘制数据时,数据似乎“嘈杂”。当我使用关键字时,数据变得不那么“嘈杂” each nth point={n}
,其中我将其增加到n
1、10、50、100(见附图)。但是,当增加时n
,我本质上并不忠实于我的记录。我想知道您是否可以帮助我消除使用我的整个数据集时看似人为的“噪音”。
我使用的代码如下:
\documentclass[11pt]{article}
\usepackage{tikz}
\usetikzlibrary{plotmarks}
\usepackage{amsmath}
\usepackage{pgfplots}
\usetikzlibrary{matrix}
\usetikzlibrary{decorations.pathmorphing,patterns}
\usepgfplotslibrary{external}
\tikzsetexternalprefix{figurescache/}
\pgfplotsset{compat=newest}
\tikzset{external/system call={lualatex \tikzexternalcheckshellescape -shell-escape -synctex=1 -halt-on-error -jobname "\image" "\texsource"}}
\tikzexternalize[mode=list and make]
\begin{document}
\begin{tikzpicture}[scale=0.6]
\begin{axis}[hide x axis, ymax={90}, ymin={-90}, xmin={0}, xmax={400}]
\addplot[very thick, color=black, each nth point={1}]table[x=t,y=rec] {./data/fig1data.dat};
\end{axis}
\end{tikzpicture}
\end{document}
编辑:@Darthbith 建议我把这个选项添加/tikz/line join=bevel
到我的轴上。它在消除噪音方面做得非常出色。放大图时会有一点点锯齿感,但这已经很棒了。这里是我在本帖附加的图表中使用的数据链接。
答案1
您可以将选项添加到轴选项中。这会导致 PGFPlots 在具有ed 边缘而不是尖锐( ed)边缘/tikz/line join=bevel
的点之间绘制线段。线连接的其他选项是和,如下所示。bevel
miter
miter
round
由于 x 轴上有大量数据点间距相对较近,y 轴上的变化相对较大,因此miter
默认选项通常会产生噪声。使用bevel
会导致绘图不会超出点的实际位置太多。您还可以查看选项/tikz/miter limit
。这两个选项都在 PGF 3.0.1a 手册第 167 页中进行了描述。
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
hide x axis,
ymax={90},
ymin={-90},
xmin={0},
xmax={400},
/tikz/line join=bevel,
]
\addplot[very thick, color=black] table[x=t, y=rec] {texexchange_data.txt};
\end{axis}
\end{tikzpicture}
\end{document}