绘制数据似乎“嘈杂”

绘制数据似乎“嘈杂”

我正在尝试绘制一些实验数据。当我使用 tikzpicture/pgfplots 绘制数据时,数据似乎“嘈杂”。当我使用关键字时,数据变得不那么“嘈杂” each nth point={n},其中我将其增加到n1、10、50、100(见附图)。但是,当增加时n,我本质上并不忠实于我的记录。我想知道您是否可以帮助我消除使用我的整个数据集时看似人为的“噪音”。

every n={1} 每个 n 为 1

every n={10} 每个 n 为 10

every n={50} 每个 n 为 50

every n={100} 每个 n 为 100

我使用的代码如下:

\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的点之间绘制线段。线连接的其他选项是和,如下所示。bevelmitermiterround

在此处输入图片描述

由于 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}

在此处输入图片描述

相关内容