是否有一个很好的做法是在ggplot标题中插入unicode字符并将其另存为pdf?
我正在努力表达,粘贴和sprintf以获得一个好的标题...
所以,有效的是
ggtitle(expression(paste('5', mu, 'g')))
这将打印一个丑陋的希腊mu。丑陋我的意思是不同的字体,但总的来说,它将以pdf格式打印而不会出现问题。但问题就出现了,如果你想在标题中添加新行。或许我没有找到解决方案。
我首选的解决方案是使用带有unicode编号的sprintf,例如
ggtitle(sprintf('5\u03BCg'))
它在屏幕上显示了一个很好的结果,但不能用ggsave保存为pdf。 PNG工作正常,但我想使用pdf保存选项。
是否有可能使用ggsave绘制unicode字符?我读到了关于cairo_pdf的设备,但这会弄乱字体,我无法正确保存图表。
提前感谢您的帮助。
修改 Example PDF
我刚刚上传了一个示例PDF ...所以也许我的问题出在其他地方......
答案 0 :(得分:8)
尝试
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)
set.seed(42)
df <- data.frame(date = 1:10 , value = cumsum(runif(10 , max = 10)) )
答案 1 :(得分:0)
使用 emojifont
包为我解决了这个问题。
library(emojifont)