在 R 裡頭使用中文字型

(這個適用於 Mac 或是 GNU/Linux, *BSD 的使用者)

R 的繪圖功能十分強大,但美中不足的是在繪圖若要使用非西歐字母的 multibyte 字元時會無法顯示,這是因為字型的關係,因此我們可以在設定中使用 par 來設定字型(這裡預設使用 Noto Sans 字型,可以免費下載),例如使用 “Noto Sans T Chinese” :

par(family='Noto Sans T Chinese')

但是如果要輸出成 png, pdf 等格式的話,上述的參數不適用,因為 par() 只能夠針對 R 預設的 graphical device 輸出。所以我們可以安裝 R 的 cairo 套件。Cairo 是一套繪製 2D 圖型的 library,亦支援字型繪製,R 安裝 cairo library

install.packages(“cairo”)

接下來就可以設定一般的字型或粗體字

CairoFonts(regular = "Noto Sans T Chinese:style=Light", bold = "Noto Sans T Chinese:style=Regular")

最後在輸出圖之前,使用 Cairo() 設定輸出的細節,type 代表輸出圖片的格式,例如 png, pdf, jpg 等:

Cairo(1600, 1600, file=filename, type="png", bg="white", dpi=300)

#繪圖的指令

dev.off()