測定された信号をどのようにプロットするか?つまり、多数のポイント

測定された信号をどのようにプロットするか?つまり、多数のポイント

これまで私はTikZ/PFGplotsを使って(シミュレートされた)信号の小さな部分をプロットしたり、スキームを描画したりしてきましたが、実際に測定された信号(例えば10kHz)になると、簡単に数百万のポイントになってしまいます。すぐにTeX の容量を超えました。申し訳ありません [メイン メモリ サイズ = 54000000]-error。明らかな回避策は、メモリを超過する (あまりお勧めできません) か、 を使用するexternalize(複数の画像をレンダリングする場合にのみ役立ちます) ことですが、どちらも生データには実用的な解決策ではありません。

100,000 (1e5) 行 (それぞれ x と y の値を含む) では問題なく動作しますが、それより大きくなると動作が停止します。ただし、10kHz と仮定すると、これは最大 10 秒の信号に変換されます...

Q: TeX で大きな信号をプロットする効率的な方法はありますか?

data.csvMWE: ( 2つの列xとを持つファイル内のデータを想定y)

\documentclass{article}
\usepackage{pgfplots}

\begin{document}
    \begin{tikzpicture}
    \begin{axis}
        \addplot table [mark=none,x=x, y=y, col sep=comma] {data.csv};
    \end{axis}
    \end{tikzpicture}
\end{document}

ファイルについてはdata.csv、これを取るここにファイルまたは、MATLAB コードのスニペットを使用して自分でファイルを再現します。

x = (1:1e6).';
y = awgn( ((x-1/3*length(x))/length(x)*10).^2,20,'measured');
writetable(table(x,y),'data.csv');

データをダウンサンプリングしながらも、最も重要なポイントを自動的に維持するスクリプトがあるかどうか知りたいです。特に、spyデータについては、この領域では元の解像度が必要です...

関連情報