
Hasta ahora he usado TikZ/PFGplots para trazar pequeñas porciones de señales (simuladas), dibujar esquemas, etc. pero cuando se trata de señales realmente medidas (por ejemplo, a 10 kHz), fácilmente terminas con millones de puntos. Muy rápido te topas con elSe excedió la capacidad de TeX, lo siento [tamaño de la memoria principal = 54000000]-error. Si bien la solución obvia es exceder la memoria (no realmente recomendado) o usarla externalize
(solo útil si renderiza varias imágenes), ambas no son una solución práctica para datos sin procesar.
Si bien funciona bastante bien con 100.000 (1e5) filas (cada una de las cuales contiene el valor xey), pero se rompe si aumenta mucho más. Sin embargo, asumiendo 10kHz, esto se traduce en una señal de 10s como máximo...
P: ¿Existe una forma eficaz de trazar señales grandes en TeX?
MWE: (asumiendo los datos en un archivo data.csv
con dos columnas x
y 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}
Para el archivo data.csv
. Toma estopresentar aquí, o utilice el fragmento de código MATLAB para reproducir el archivo usted mismo:
x = (1:1e6).';
y = awgn( ((x-1/3*length(x))/length(x)*10).^2,20,'measured');
writetable(table(x,y),'data.csv');
Me preguntaba si existe un script para reducir la muestra de los datos pero manteniendo los puntos más importantes automáticamente. En particular quiero spy
ver los datos, necesita la resolución original en esta área...