下载字体

下载字体的网站可以去求字网,下载到的文字解压到系统自己文件夹中(C:\Windows\Fonts)

showtext包介绍

在系统字体存储盘中找到想要的字体,右键-属性找到其真正的名字。例如:楷书的名字为“simkai.ttf”
使用font_add函数添加字体

library(showtext)
font_add(myfont, "simkai.ttf") ##添加字体
font.families() ##查看添加的字体
[1] "sans"         "serif"        "mono"         "wqy-microhei" "myfont"

使用showtext包中的函数加载和去掉字体

showtext.begin()##加载字体
showtext.end()##去掉字体

Cairo包介绍

使用Cairo包导出:我们在用作图的时候会发现,如果含有中文的话,通过showtext设置了语言。**在保存为png或者jpeg格式的时候是发现字体改变了。但是如果在保存为pdf格式的时候会发现中文全是…或者会发生错误。**这个时候就需要用到Cairo包中了。

Cairo.capabilities() ##查看cairo包支持的所有导出格式
png   jpeg   tiff    pdf    svg     ps    x11    win raster
TRUE  FALSE  FALSE   TRUE   TRUE   TRUE  FALSE   TRUE   TRUE

使用新字体作图并导出pdf

通过上面的两个包我们就很轻松的解决了R语言中导出PDF格式的时候乱码的问题。下面来一段示例看一下吧

library("showtext")
setwd("C:/Users/Administrator/Desktop")
td<-c("C:/Users/Administrator/Desktop")
# font_add( "myfont",simkai.ttf") ##添加字体
# font.families() ##查看添加的字体
# showtext_begin() ##使用字体
# showtext_end() ##停止使用字体library("ggplot2")
library("Cairo")
font_add("myfont","STCAIYUN.TTF")  ##加载华文彩云字体
font.families() #显示字体
#[1] "sans"         "serif"        "mono"         "wqy-microhei" "myfont"       "wmpeople1"
CairoPDF("mm.pdf")
showtext_begin() ##使用字体
ggplot(diamonds,aes(color,fill=cut))+geom_bar()+ggtitle("钻石质量情况")+theme(title=element_text(family="myfont"))
showtext_end() ##停止使用字体
dev.off()system(paste(getOption('pdfviewer'),file.path(td,'mm.pdf')))

效果如下:

来源可见:https://www.jianshu.com/p/97c915e66ff4

R软件中调用windows字体二相关推荐

  1. R语言中调用windows中的字体方法

    windowsFonts(A=windowsFont("华文彩云"),#这里使用的是字体的主题名称B=windowsFont("华文仿宋"),C=windows ...

  2. 在C#中调用windows API函数

    Api函数是构筑Windws应用程序的基石,每一种Windows应用程序开发工具,它提供的底层函数都间接或直接地调用了Windows API函数,同时为了实现功能扩展,一般也都提供了调用Windows ...

  3. 如何在Python中调用Windows的cmd命令?

    简 介: 利用os,commands,subprocess模块可以在python中调用windows中的命令.从使用方便性上来看,利用os.popen可以执行windows的程序并可以获得返回内容. ...

  4. android闹钟例子,自己软件中调用android系统闹钟

    [实例简介] 自己软件中调用android系统闹钟! 综合网上资料,得来 [实例截图] [核心代码] 54ba60f3-fa09-4e61-b3ab-c4fca16d07b2 └── CallSyst ...

  5. r软件中合并列_将摘要合并到软件中

    r软件中合并列 Now that we've gotten to the core of what programming languages do, let's get a little more ...

  6. 在R软件中,提取时间数据中的小时数

    今天在改案例的过程中,遇到这样一个问题.时间列的数据全是这样的: 目的是为了计算每个小时 样本出现了多少次,比如如图所示,凌晨0点出现了一次,中午12时出现了两次. (方法一) 本来打算使用R软件中的 ...

  7. C#中调用Windows API时的数据类型对应关系

    C#中调用Windows API时的数据类型对应关系 原文 C#中调用Windows API时的数据类型对应关系 BOOL=System.Int32 BOOLEAN=System.Int32 BYTE ...

  8. 在c#中调用windows脚本的方法

    在c#中调用windows脚本的方法 方法1:直接调用   CODE:   System.Diagnostics.Process proc = new System.Diagnostics.Proce ...

  9. 解决:R软件中不能导入包和Word中新输入的字覆盖后面字的情况

    [R软件中导入包] 必需在联网的情况下才能导入. [Word中新输入覆盖后面字] 按[insert]即可解决该问题

  10. matlab的ln函数表示,r软件中ln函数 r语言ln函数

    你对R软件中 rnorm函数是怎么 理解 的? rnorm(n, mean = 0, sd = 1)n 为产生随机值个数(长度),mean 是平均数, sd 是标准差 . 使用该函数的时候后,一般要赋 ...

最新文章

  1. PAT甲级1022 Digital Library (30分):[C++题解]结构体、排序、查询
  2. 初等数论--整除--公倍数一定是最小公倍数的倍数
  3. python连接mysql代码_python连接mysql
  4. 6410移植linux3.3.5
  5. php 蓝奏网盘上传文件,蓝奏云_文件上传_API
  6. 航天金税 接口_用友凭证接口可以实现数据之间无缝对接和打通
  7. 乡村野生草药_官方野生蝇群流口水分数
  8. vue的slot作用域插槽使用案例
  9. mac远程redis_Linux:使用Mac远程(局域网内)访问Ubuntu主机上的Redis服务
  10. [原创].NET 业务框架开发实战之六 DAL的重构
  11. Coolite Toolkit学习笔记一:AjaxEvent、AjaxMethod和Listeners
  12. 可能是你见过的最完善的微前端解决方案
  13. 哈工大2015秋 编译原理课程实验1:词法分析
  14. 不能对bug视而不见
  15. PyCharm快捷键
  16. 六款很6的电脑驱动管理器:驱动升级用什么软件好 | 国外最好的电脑驱动管理软件推荐
  17. 学习手机软件开发学什么,怎样学?
  18. Bootstrap 面包屑导航(Breadcrumb)
  19. Crd(自定义资源类型)2021.12.05
  20. Java 8-Duration 详解

热门文章

  1. 塔防游戏策划方案unity
  2. 集成电路设计专业有计算机课程吗,集成电路属于什么专业大类 什么学科
  3. 推荐参考文献元数据挖掘的几篇论文
  4. VB.Net程序设计:分页控件
  5. 知识点滴 - 什么是量词
  6. 游戏蛮牛Unity 用户文档
  7. loadrunner 11下载及破解
  8. Java使用easyExcel操作Excel案例
  9. python实现数据库查询导出到excel案例
  10. 台式机linux连wifi,台式电脑怎么用wifi八种方法解决