Я искал ТАК, гуглил, читал ?pdf
и не нашел возможности сохранить график в формате pdf со слоями, которые можно включать и выключать на полях средства просмотра pdf. Примером того, о чем я говорю, являются четырехъядерные топографические карты Геологической службы США, которые можно загрузить в формате PDF с несколькими слоями, например это (архивированный pdf).
Следующее предложение в справочном файле pdf() звучит зловеще, но я также хотел проверить, правильно ли я его истолковал:
The R graphics model does not distinguish graphics objects at the level
of the driver interface.
Раньше я мог сохранять многослойные PDF-файлы в Illustrator, но этой программы больше нет в моем распоряжении. Возможно, кто-то может придумать обходной путь из R? Данные, которые я использую для отображения, большие, но вот игрушечный пример:
pdf("2objects.pdf")
plot(NULL, type = "n",xlim = c(0,1),ylim = c(0,1))
rect(0,.7,.7,0,border = "blue",lwd=2)
rect(.3,1,1,.3,border = "red",lty=2,lwd=2)
dev.off()
Это выглядит так (это png, но приведенное выше даст pdf)
Я хотел бы иметь красные и синие поля в качестве слоев с видимостью, которые можно включать и выключать из средства просмотра PDF.
Большое спасибо!
Изменить: найдена поток в R-help (re: @mnel), и это кажется невозможным. Я по-прежнему оставлю этот вопрос открытым на случай, если кто-то придумал отличный обходной путь R-tastic.
Изменить (5 сентября 2012 г.): я попытался сделать это с помощью Sweave и добился частичного успеха, используя обходной путь, опубликованный здесь. Этот метод создает один PDF-файл со «слоями», которые можно включать и выключать с помощью текста с гиперссылками под изображениями. Для этого используется трюк с «анимацией». Хотя это по-прежнему не является моим конечным желаемым результатом, его преимущество заключается в том, что он не зависит от конкретных программ просмотра PDF. Я все еще подожду, чтобы увидеть, опубликует ли кто-нибудь способ создания слоев, также известных как OCG, в документе Sweave, который я мог бы затем автоматизировать.
Изменить (13 сентября 2012 г.): я опубликовал свой прогресс в качестве ответа, используя код, упомянутый выше. Мне удалось заставить его работать в более сложной реальной ситуации без каких-либо изменений в коде с наложением различных административных и статистических границ в США. В этом случае я просто назвал разные наложения карт layer-0.pdf
, layer-1.pdf
и т. д., и все заработало без ошибок. Я все еще надеюсь, что со временем здесь появится что-нибудь получше.
Всем спасибо за комментарии
tikzDevice
. и может настроитьtikz
илиpgf
, чтобы получить PDF со слоями. К сожалению, пакет заархивирован, но он создает красивую графику (по крайней мере, когда я использовал его 2 года назад). - person mnel   schedule 05.09.2012