측정된 신호를 플롯하는 방법은 무엇입니까? 즉, 포인트 수가 많다.

측정된 신호를 플롯하는 방법은 무엇입니까? 즉, 포인트 수가 많다.

지금까지 나는 TikZ/PFGplots를 사용하여 (시뮬레이션된) 신호의 작은 부분을 플롯하고 구성표를 그리는 등을 했습니다. 그러나 실제로 측정된 신호(예: 10kHz에서)에 관해서는 쉽게 수백만 개의 포인트로 끝납니다. 아주 빨리 당신은TeX 용량을 초과했습니다. 죄송합니다. [주 메모리 크기=54000000]-오류. 확실한 해결 방법은 메모리를 초과하거나(실제로는 권장되지 않음) 메모리를 사용하는 것 externalize(여러 이미지를 렌더링하는 경우에만 유용함)이지만 둘 다 원시 데이터에 대한 실용적인 솔루션은 아닙니다.

100,000(1e5)개의 행(각각 x 및 y 값 포함)에서는 꽤 잘 작동하지만 훨씬 더 커지면 중단됩니다. 그러나 10kHz를 가정하면 이는 최대 10초의 신호로 변환됩니다.

Q: TeX에서 큰 신호를 플롯하는 효율적인 방법이 있습니까?

data.csvMWE: ( 두 개의 열과 가 있는 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데이터에 관해서는 이 영역의 원래 해상도가 필요합니다...

관련 정보