
Обычно я экспортирую графики ggplot2 из R с помощью "Сохранить как" PDF и все отлично работает, затем я использую \includegraphics
из LaTex, чтобы включить рисунок. Проблема в том, что, похоже, объем данных в этих экспортированных PDF из R большой, например, более 600K каждый. Если я экспортирую несколько документов PDF таким образом, конечный PDF открывается очень медленно.
У меня такой вопрос: как мне изменить R или загрузку по-другому, чем LaTex, чтобы конечный документ не был таким большим, а качество графиков оставалось очень высоким?
решение1
Если дойдет до того, что PDF больше, чем PNG с высоким разрешением для вашего конечного использования, то создайте файл PNG с высоким разрешением. Например, для рисунка, который будет 4 дюйма в квадрате на странице для печати, вам нужно 300 точек на дюйм x 4 = 1200 пикселей. Так что сделайте:
png(file="plot1.png",width=1200,height=1200)
makemyplot()
dev.off() # close the png file
Пороговое значение для этого будет зависеть от того, насколько эффективен алгоритм сжатия PNG и сколько у вас перекрывающихся «чернил» — все чернила в PDF-файле занимают место, но вы можете сделать миллион точек в PNG-файле в одном и том же месте, и это займет всего несколько байт.
Также есть различные инструменты сжатия PDF, но я предполагаю, что вы работаете в Windows, а я использую инструменты командной строки Unix. Пока я говорю об инструментах командной строки, вы, вероятно, можете преобразовать существующие PDF в растровые PNG с помощью инструмента 'convert' из пакета ImageMagick.
Но 600k — это не так.чтобольшой. Я работаю над книгой с 2-мегабайтными PDF-файлами почти на каждой странице.