1、問題描述
ggplot2
是R語言中最知名的可視化軟件包垂券,但是該包繪制圖形中花盐,中文顯示會出現(xiàn)異常,例如:
# Load the packages
pacman::p_load(tidyverse, ggplot2)
# Random data
test_data <- tibble(X_axis = rnorm(100),
Y_axis = rnorm(100))
# Plot
test_data %>%
ggplot(mapping = aes(x = X_axis, y = Y_axis)) +
geom_point() +
labs(title = "示例數(shù)據(jù)", x = "橫坐標", y = "縱坐標")
Fig 1 中文顯示問題
可以看到菇爪,我們設置的X軸算芯、Y軸以及題目都顯示為一個個方塊。
2凳宙、解決方法
首先熙揍,我們需要安裝showtext
包,并加載(pacman::p_load
命令可以加載對應包氏涩,如果該包未安裝届囚,則會自動安裝后加載):
> pacman::p_load(showtext)
我們可以通過showtext
包中的命令查看當前環(huán)境中可供使用的字體:
> font_families()
[1] "sans" "serif" "mono" "wqy-microhei"
可以看到,確實沒有中文字體是尖,我們可以加載我們想用的中文字體:
showtext_auto()
# 第一個是字體名稱意系,第二個是字體的路徑
font_add("FZSKBXKJW", "FZSKBXKJW.TTF")
然后在繪圖中指明使用這一字體就可以了:
test_data %>%
ggplot(mapping = aes(x = X_axis, y = Y_axis)) +
geom_point() +
labs(title = "示例數(shù)據(jù)", x = "橫坐標", y = "縱坐標") +
#指明使用的字體
theme(text = element_text(family = "FZSKBXKJW"))
Fig.2 解決中文顯示問題
至于具體的字體大小調(diào)節(jié),可以自行查閱ggplot2的相關文檔饺汹。