近期使用R绘图遇到两个问题

1. 使用不同的字体

2. 保存 plot 至 pdf 当字体嵌入pdf (embed the font)

使用extrafont和Ghostscript能够解决这两个问题。

1. Ghostscript

安装: http://www.ghostscript.com/download/gsdnld.html

2. extrafont (R package)

下面命令都是在R中执行

- 安装

> install.packages("extrafont")
> library(extrafont)
> #这一步定位系统字体。比方C:\Windows\Fonts\*.ttf, 须要几分钟的时间
> font_import()
> loadfonts()

- 使用

> #查看可用的font family
> fonts()
> library(ggplot2)
> #使用字体Times New Roman绘图
> p <- ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() +xlab("Weight") + ylab("Miles per Gallon") +theme(text=element_text(family="Times New Roman"))
> #保存pdf
> ggsave("font_ggplot.pdf", plot=p)

- 将字体嵌入pdf

> #指定ghostscript的路径
> Sys.setenv(R_GSCMD = "C:/Program Files/gs/gs9.05/bin/gswin32c.exe")
> #嵌入字体
> embed_fonts("font_ggplot.pdf", outfile="font_ggplot_embed.pdf")

所得到的font_ggplot_embed.pdf就是所须要的pdf啦!

能够使用Adobe Reader -> File -> Properties -> Fonts 来查看字体是否已嵌入

(以上内容部分来自http://cran.r-project.org/web/packages/extrafont/README.html)

Bonus:直接使用Ghostscript命令行嵌入字体到pdf

(在cmd中执行,别忘了将ghostscript增加环境变量)

gswin32c -sFONTPATH=C:\Windows\Fonts -sDEVICE=pdfwrite -dEmbedAllFonts=true -o output.pdf input.pdf

版权声明:本文博客原创文章,博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/mengfanrong/p/4731684.html

R - 变化plot字形,嵌入字体以pdf相关推荐

  1. Word转PDF文档时,如何嵌入字体

    Word转PDF文档时,如何嵌入字体 在很多情况下,上传论文的Camera Ready版本时,要求提交PDF版本.下面的文章转自http://blog.csdn.net/chenyusiyuan/ar ...

  2. Matlab plot画图 坐标字体、字号、范围、间隔等的设置

    Matlab plot画图 坐标字体.字号.范围.间隔等的设置 MATLAB 坐标的数字.范围.间隔调整 matlab绘图的时候只用plot函数出来的图不一定符合自己最想要的格式, 经常要对坐标的数字 ...

  3. R语言使用R原生函数plot和lines可视化线图、并使用lty参数自定义线条类型、lwd自定义设置线条的粗细、col参数自定义线条颜色(Change R base plot line types)

    R语言使用R原生函数plot和lines可视化线图.并使用lty参数自定义线条类型.lwd自定义设置线条的粗细.col参数自定义线条颜色(Change R base plot line types) ...

  4. R语言plot函数散点图、密度图实战

    R语言plot函数散点图.密度图实战 目录 R语言plot函数散点图.密度图实战 #仿真数据 #散点图中添加回归线

  5. R语言ggplot2可视化:使用R原生plot函数为指定曲线下面的区域着色、ggplot2可视化在曲线的特定下方添加分割线、ggplot2为指定曲线下面的区域着色

    R语言ggplot2可视化:使用R原生plot函数为指定曲线下面的区域着色.ggplot2可视化在曲线的特定下方添加分割线.ggplot2为指定曲线下面的区域着色 目录

  6. R语言ggplot2可视化指定保存到pdf的图像的具体尺寸、保证缩放的一致性:使得绘图元素(文本、点大小等)在设计上都具有相同的绝对大小、设置全局数据点大小、主题格式、设置图像保存的具体尺寸

    R语言ggplot2可视化指定保存到pdf的图像的具体尺寸.保证缩放的一致性:使得绘图元素(文本.点大小等)在设计上都具有相同的绝对大小.设置全局数据点大小.主题格式.设置图像保存的具体尺寸 目录

  7. R语言plot函数可视化、ggplot2可视化把图像标题(title)的部分内容着色实战:标题的部分内容配置不同的色彩、副标题(subtitle)的内容配置不同的色彩

    R语言plot函数可视化.ggplot2可视化把图像标题(title)的部分内容着色实战:标题的部分内容配置不同的色彩.副标题(subtitle)的内容配置不同的色彩 目录

  8. R语言ggplot2可视化并添加特定区间的回归线、R原生plot函数可视化并添加特定区间的回归线:Add Regression Line Between Certain Limits

    R语言ggplot2可视化并添加特定区间的回归线.R原生plot函数可视化并添加特定区间的回归线:Add Regression Line Between Certain Limits 目录

  9. R语言可视化R原生plot函数与ggplot可视化结果组合、整合输出实战:原生R绘图plot函数可视化、ggplot2包可视化、R原生plot函数与ggplot可视化结果组合

    R语言可视化R原生plot函数与ggplot可视化结果组合.整合输出实战:原生R绘图plot函数可视化.ggplot2包可视化.R原生plot函数与ggplot可视化结果组合 目录

最新文章

  1. Error: EACCES: permission denied, symlink
  2. 关于举办第十五届全国大学生智能汽车竞赛浙江赛区选拔赛的通知
  3. python怎么输入代码-教你如何将自己的脚本代码放到服务器上运行
  4. 在去长春和松源的路上
  5. Windows修改jupyter默认工作路径
  6. html检查元素是否溢出方法,JS判断指定dom元素是否在屏幕内的方法实例
  7. php实现标签打印,标签打印软件怎么实现批量套打标签?
  8. 关于电解电容ESR的问题
  9. 腾讯实习网申到面试--小记
  10. linux .cache目录,关于linux系统下的cache Memory
  11. 等高线的matlab编程,matlab等高线
  12. 对于网络连接超时问题的推测;错误码3001 3002 3003 3004等网络错误code码
  13. 1414. 和为 K 的最少斐波那契数字数目 贪心+递归 大年初三力扣是想意思意思一下呗~
  14. tecplot选择变量
  15. react初始(1)
  16. 益聚星荣:靴子过万、口罩上千,加拿大鹅又是在收割“智商税”
  17. Java分布式跟踪系统Zipkin(五):Brave源码分析-Brave和SpringMVC整合
  18. Ubuntu16.04安装cuckoo sandbox
  19. 18.查询好友动态和推荐动态
  20. EXCEL使用技巧-数据统计——统计指定sheet非空内容行数、指定内容在指定列出现次数

热门文章

  1. linux根据端口号找目录,linux篇---根据端口号查看进程位置
  2. cpu上干硅脂怎么清理_cpu导热硅脂如何涂抹,涂抹的时候需要注意哪些事项
  3. mongodb自定义字段_MongoDB哈希分片
  4. 2018百度之星程序设计大赛-资格赛P1002子串查询(前缀和)
  5. STL算法入门基础【OI缩水版】
  6. 什么叫pmt测试分析_圆偏振发光光谱仪——南方科技大学分析测试中心设备介绍第51期...
  7. MySQL不应出现的开始声明_备考:2019年9月计算机二级MySQL试题
  8. java语言程序设计复习重点_java语言程序设计期末复习要点
  9. [蓝桥杯]基础练习 回文数
  10. [leetcode]241. 为运算表达式设计优先级