在ggplot图中使用unicode字符的舒适方法

drm*_*iod 8 unicode r ggplot2

是否有一个很好的做法是在ggplot标题中插入unicode字符并将其另存为pdf?

我正在努力表达,粘贴和sprintf以获得一个不错的标题......

那么,有效的是

ggtitle(expression(paste('5', mu, 'g')))
Run Code Online (Sandbox Code Playgroud)

这将打印出一个丑陋的希腊mu.丑陋我的意思是不同的字体,但总体而言,它将以pdf格式打印而不会出现问题.但问题就出现了,如果你想在标题中添加新行.或许我没有找到解决方案.

我的首选解决方案是使用带有unicode编号的sprintf,例如

ggtitle(sprintf('5\u03BCg'))
Run Code Online (Sandbox Code Playgroud)

它在屏幕上显示了一个很好的结果,但不能用ggsave保存为pdf.PNG工作正常,但我想使用pdf保存选项.

是否有可能用ggsave绘制unicode字符?我读到了关于cairo_pdf设备,但这会弄乱字体,我无法正确保存图表.

在此先感谢您的帮助.

编辑: 示例PDF

我刚刚上传了一个示例PDF ...所以也许我的问题出在其他地方......

akr*_*run 9

尝试

library(ggplot2)
p <- ggplot(df, aes(x=date, y=value)) 
p <- p + geom_line()
p + ggtitle(sprintf('5\u03BCg'))
library(Cairo)
ggsave("newfile.pdf", device=cairo_pdf)
Run Code Online (Sandbox Code Playgroud)

数据

set.seed(42) 
df <- data.frame(date = 1:10 , value = cumsum(runif(10 , max = 10)) )
Run Code Online (Sandbox Code Playgroud)