ggplot2 импорт pdf в Adobe Illustrator отсутствует шрифт AdobePiStd - PullRequest
49 голосов
/ 03 апреля 2012

Я создал несколько простых графиков ggplot2 и сохранил их в файлы PDF, используя следующие команды:

p <- ggplot(plotobject, aes(x=Pos, y=Pval),res=300)
ggsave(plot=p,height=6,width=6,dpi=200, filename="~/example.pdf")

Если я сейчас открою этот файл example.pdf в Adobe Illustrator, я получу следующую ошибку:

Шрифт AdobePiStd отсутствует.Затрагиваемый текст будет отображаться с использованием замещающего шрифта.

Есть ли способ в ggplot2 указать шрифт (я предполагаю, что это для точек / точек), который Adobe поймет, или иным образом есть ли способзаставить этот шрифт работать в Adobe?

/ edit, чтобы уточнить, что текст / метки / заголовки все в порядке, это те точки, которые отсутствуют для font / edit2. Я получил рабочее решение, просто используя вывод EPS в ggsave, но все равноМне нравится искать способ также иметь возможность просто открывать / импортировать графики ggplot2 в формате PDF непосредственно в AI

Ответы [ 8 ]

40 голосов
/ 13 февраля 2014

Хотя изменение шрифтов, используемых ИИ, работает хорошо, альтернативой является ограничение ggplot2 от использования Dingbats в первую очередь путем добавления аргумента 'useDingbats' к вашей команде ggsave, например:

ggsave(plot=p,height=6,width=6,dpi=200, filename="~/example.pdf", useDingbats=FALSE)
36 голосов
/ 19 февраля 2013

Я тоже столкнулся с этой проблемой в Mac OS X 10.8.2.

Это решило проблему для меня:

font='/Library/Application Support/Adobe/PDFL/10.9/Fonts/AdobePiStd.otf'
cp $font /Library/Fonts/

В вашей системе найдите файл с find:

find / -name AdobePiStd.otf 2>/dev/null

/Applications/Adobe Photoshop CC 2018/Adobe Photoshop CC 2018.app/Contents/Required/PDFL/Resource/Fonts/AdobePiStd.otf
/Applications/Adobe Illustrator CC 2018/Adobe Illustrator.app/Contents/Required/PDFL Resource/Resource/Fonts/AdobePiStd.otf
/Applications/Adobe Acrobat DC/Adobe Acrobat.app/Contents/Resources/Resource/Font/AdobePiStd.otf
10 голосов
/ 03 апреля 2012

Для точек или точек, которые не отображаются правильно в PDF, я просто заменяю Zapf Dingbats отсутствующим шрифтом в Adobe Illustrator. Для простых маркеров графика это делает работу большую часть времени.

9 голосов
/ 05 ноября 2012

Это кажется извращенной проблемой, при которой Adobe Illustrator не может найти шрифт (AdobePiStd), который распространяется с Adobe Reader и, таким образом, вероятно присутствует.

Если вы ищете компьютер, вы, вероятно, найдете его. В моей системе WindowsXP это было в: C: \ Program Files \ Adobe \ Reader 10.0 \ Resource \ Font

Найдя его, вы можете установить его и другие шрифты в эту папку, что должно позволить Illustrator их найти.

Для других проблем со шрифтами / pdf в R полезна функция embedFonts в пакете grDevices.

8 голосов
/ 09 марта 2014

Используйте useDingbats=FALSE для вывода в формате PDF, тогда Illustrator не будет жаловаться.

pdf("example.pdf", useDingbats=FALSE)
ggplot(plotobject, aes(x=Pos, y=Pval),res=300)
dev.off()
3 голосов
/ 14 января 2013

Вы можете скачать шрифт AdobePiStd - просто Google его, скачать и установить. После перезагрузки шрифт должен отображаться правильно. Затем вы можете использовать утилиту «Найти шрифт ...» в Illustrator, чтобы изменить ее, если хотите.

3 голосов
/ 03 апреля 2012

РЕДАКТИРОВАТЬ 2018 Вопрос был для начального лица путаницы. Ответ на этот вопрос pdf(useDingbats = FALSE), как указано в многочисленных ответах выше. Я не буду удалять этот ответ, если вы хотите прочитать о шрифтах (что также может стать проблемой).

СТАРЫЙ ОТВЕТ ИИ не распознает шрифты Helvetica. На моем компьютере это не имеет большого значения, так как он автоматически заменяет шрифт чем-то подходящим. Конечно, вы хотите изменить шрифт в некоторых случаях. Я часто делаю это вручную в AI (просто выделяю весь текст и меняю тип шрифта). Вот ветка о том, как изменить шрифт в ggplot2: Изменение шрифтов в ggplot2

Ps. Также может быть полезен другой поток: Шрифты на графиках R

0 голосов
/ 17 августа 2017

Другой вариант, который в простых случаях может решить проблему, состоит в том, чтобы в иллюстраторе выбрать неправильно отображаемые текстовые объекты и изменить шрифт.Helvetica Neue работает на меня.

...