Любое представление векторного формата из 10 ^ 5 точек обязательно будет большим, потому что каждая точка описывается отдельно, даже если она лежит поверх или под многими другими точками.Общее решение заключается в использовании растрового формата для графика, поскольку каждый пиксель в графике либо установлен, либо не задан, независимо от того, сколько точек лежит поверх него.Размер выходного представления в первом приближении не зависит от количества точек.
Придерживаясь gnuplot, я бы, вероятно, использовал set terminal cairolatex png standalone
для генерации начального описания графика, а затем pdflatex для получения окончательного PDFс растровым изображением, встроенным в него.Например:
# create a bitmapped version
set term cairolatex png standalone size 10cm, 7cm
set output 'cairolatex+png.tex'
set xrange [0:1]
set sample 100000
plot '+' using (rand(0)):(rand(0)) with dots
unset output
system("pdflatex cairolatex+png")
# create a vector version
set term tikz standalone size 10cm, 7cm
set output 'tikz.tex'
set sample 10000
replot
unset output
system("pdflatex tikz")
Первый график завершается немедленно и создает файл меньшего размера.Второй график занимает несколько минут и создает файл большего размера, несмотря на то, что он содержит только 1/10 количества точек.
[236] ls -s1 *.pdf
416 cairolatex+png.pdf
844 tikz.pdf
Оба используют латекс для текстовых частей графика, хотя шрифты по умолчанию могут не соответствоватьто же самое.