R 绘图 - 中文支持学习笔记
在 R 语言中,有许多绘图包可以用来进行数据可视化。而中文的支持则是非常关键的一个问题。本篇学习笔记将介绍如何在 R 中添加中文支持,以及演示一些基本的绘图技巧。
添加中文字体支持
在 R 中默认并不支持中文字体,为了能够正确地渲染中文字体,我们需要手动安装中文字体,并在 R 中进行设置。
假设我们选择使用思源宋体作为中文字体,那么我们可以在以下网站下载字体文件:
下载完成后,我们需要将字体文件安装到系统中。对于 Windows 系统,可以直接双击字体文件进行安装。对于 Linux 和 macOS 系统,则可以将字体文件复制到 /usr/share/fonts/
目录下并运行 fc-cache -fv
命令刷新字体缓存。
安装完成后,我们需要在 R 中设置中文字体:
RCopy Codelibrary(showtext)
font.add("SourceHanSerifCN-Regular.ttf", "Source Han Serif CN")
par(family = "Source Han Serif CN") # 设置中文字体
基础绘图
在添加中文支持后,我们可以开始使用 R 进行绘图了。下面是一个简单的例子,演示如何绘制散点图:
RCopy Codelibrary(ggplot2)
# 生成数据
x <- rnorm(100)
y <- rnorm(100)
# 绘制散点图
ggplot(data.frame(x, y), aes(x, y)) +
geom_point()
上面的代码中,我们使用了 ggplot2
包中的 geom_point
函数来绘制散点图。通过 aes
函数可以指定变量映射关系。最后通过加号运算符将多个图层组合在一起。
线性回归
除了绘制散点图外,我们也可以使用 R 来进行线性回归。下面是一个简单的例子,演示如何进行线性回归并绘制回归线:
RCopy Codelibrary(ggplot2)
# 生成数据
x <- rnorm(100)
y <- x + rnorm(100)
# 进行线性回归
fit <- lm(y ~ x)
# 绘制散点图以及回归线
ggplot(data.frame(x, y), aes(x, y)) +
geom_point() +
geom_abline(slope = fit$coef[2], intercept = fit$coef[1])
上面的代码中,我们首先使用 lm
函数进行线性回归,并将结果保存在 fit
变量中。然后使用 geom_abline
函数绘制回归线。通过指定斜率和截距可以将回归线画出来。
箱线图
另外一个常见的可视化方式是箱线图。下面是一个简单的例子,演示如何绘制箱线图:
RCopy Codelibrary(ggplot2)
# 生成数据
data <- data.frame(
group = factor(rep(1:3, each = 50)),
value = c(rnorm(50, mean = 0), rnorm(50, mean = 2), rnorm(50, mean = 4))
)
# 绘制箱线图
ggplot(data, aes(x = group, y = value)) +
geom_boxplot()
上面的代码中,我们生成了随机数据,并使用 geom_boxplot
函数绘制箱线图。
总结
本篇学习笔记介绍了如何在 R 中添加中文支持,并演示了一些基础的绘图技巧,包括散点图、线性回归和箱线图。通过学习这些基本的绘图技巧,可以为更复杂的数据分析和可视化打下基础。