首页 理论教育 使用系统字体政经数据可视化

使用系统字体政经数据可视化

时间:2023-11-19 理论教育 版权反馈
【摘要】:R能够支持的字体非常有限,而我们有时却希望使用楷体、Times New Roman之类的常用字体。dat=read.csv # 课件中的文件## 以下示例将使用多种字体添加标题并在面板中添加文字# 第一步,加载字体windows Fontswindows Fontswindows Fonts# 我们可以从Windows系统控制面板中的字体文件夹中查到字体名称。只有这样,我们才能在作图时使用粗体、斜体和粗斜体。不同之处在于,当使用ggsave函数以pdf格式保存时,汉字可以正常显示

使用系统字体政经数据可视化

R能够支持的字体非常有限,而我们有时却希望使用楷体、Times New Roman之类的常用字体。在这种情况下,有两个解决办法,一种不需加载额外的R包,另一种需使用showtext包。

一、使用windows Fonts函数

第一种方法仅限Windows系统使用。

dat=read.csv("happy small.csv", row.names=1) # 课件中的文件

## 以下示例将使用多种字体添加标题并在面板中添加文字

# 第一步加载字体

windows Fonts(new1=windows Font("楷体"))

windows Fonts(new2=windows Font("Times New Roman"))

windows Fonts(new3=windows Font("Wingdings"))

# 我们可以从Windows系统控制面板中的字体文件夹中查到字体名称以上方法用于把这些名称输入R中文件夹只包含"楷体 常规"这个名称但在加载时我们要去掉"常规"二字注意此时即使加载了一个本不存在的字体R也不会报错等号前边的名称是我们赋予被加载字体的临时名称可随意使用任何名称

# 第二步手动打开绘图窗口

windows()

# 第三步作图并把family参数指向我们赋予被加载字体的名称图5-3-1

图5-3-1 使用windows Fonts函数

ggplot(dat)+

geom_text(aes(30000, 4, label="Add text\nhere."), size=12, family="new2", fontface=4)+

geom_text(show.legend=FALSE, aes(GDP_percap, Satisfaction, label=c("b", "Q", "J", "A", "c", "K", "L", "M", "N", "["), color=factor(1: 10)), size=12, family="new3")+

labs(title="使用多种字体")+ylim(2.5, 8)+

theme(plot.title=element_text(size=20, family="new1", face=4))

# 第四步保存(www.xing528.com)

# 我们可以使用ggsave函数进行保存亦可把包含图表的窗口拉动到合适的尺寸,点击左上角的"File"再点击"Save as"并选择保存格式推荐使用png格式,不要使用pdf格式

二、使用showtext包

第二种方法在两方面不同于第一种方法:首先,第二种方法可以确保pdf文件中的汉字能够正常显示;其次,第二种方法既适用于Windows也适用于Mac OS。另外,showtext包的功能在被开启后可能会使第一种方法失效,所以请在每次作图时只使用一种方法。

# install.packages("showtext")

library(showtext)

# 第一步加载字体

font_add(family="lishu", regular="SIMLI.TTF") # font_add的family参数指向任意一个临时名称注意regular参数指向的不是字体的名称而是文件名具体来讲如果要加载隶书字体我们不能将regular指向"隶书"而应该指向字体文件的名称我们右键点击代表隶书字体的文件再点击"属性"就可以看到文件名"SIMLI.TTF"了

font_add(family="times", regular="times.ttf", bold="timesbd.ttf", italic="timesbi.ttf", bolditalic="timesi.ttf") # 在加载Times New Roman时我们右键点击文件后没有找到"属性"因此点击"打开"我们看到该字体包含四个文件分别与常规粗体斜体和粗斜体相对应我们右键点击这四个文件并点击"属性"查看文件名再把regularbolditalicbolditalic参数指向这些文件名只有这样我们才能在作图时使用粗体斜体和粗斜体相反隶书字体只包含一个文件即"SIMLI.TTF"),这意味着我们无法使用它的粗体斜体和粗斜体

# 第二步开启功能

showtext_auto() # 仅在输入这一代码后showtext包的功能才会开启

# 第三步打开作图设备在Windows中输入windows()在Mac OS中输入

quartz()

windows()

# 第四步作图

ggplot()+geom_text(aes(0, 0, label="Add text\nhere."), family="times", size=15, fontface=4, color="red")+

labs(title="标题")+

theme(plot.title=element_text(family="lishu", size=30))

# 第五步保存

# 保存图表的操作与第一种方法相同不同之处在于当使用ggsave函数以pdf格式保存时汉字可以正常显示

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈