R 绘图 - 中文支持学习笔记

在 R 语言中,有许多绘图包可以用来进行数据可视化。而中文的支持则是非常关键的一个问题。本篇学习笔记将介绍如何在 R 中添加中文支持,以及演示一些基本的绘图技巧。

添加中文字体支持

在 R 中默认并不支持中文字体,为了能够正确地渲染中文字体,我们需要手动安装中文字体,并在 R 中进行设置。

假设我们选择使用思源宋体作为中文字体,那么我们可以在以下网站下载字体文件:

下载完成后,我们需要将字体文件安装到系统中。对于 Windows 系统,可以直接双击字体文件进行安装。对于 Linux 和 macOS 系统,则可以将字体文件复制到 /usr/share/fonts/ 目录下并运行 fc-cache -fv 命令刷新字体缓存。

安装完成后,我们需要在 R 中设置中文字体:

RCopy Code
library(showtext) font.add("SourceHanSerifCN-Regular.ttf", "Source Han Serif CN") par(family = "Source Han Serif CN") # 设置中文字体

基础绘图

在添加中文支持后,我们可以开始使用 R 进行绘图了。下面是一个简单的例子,演示如何绘制散点图:

RCopy Code
library(ggplot2) # 生成数据 x <- rnorm(100) y <- rnorm(100) # 绘制散点图 ggplot(data.frame(x, y), aes(x, y)) + geom_point()

上面的代码中,我们使用了 ggplot2 包中的 geom_point 函数来绘制散点图。通过 aes 函数可以指定变量映射关系。最后通过加号运算符将多个图层组合在一起。

线性回归

除了绘制散点图外,我们也可以使用 R 来进行线性回归。下面是一个简单的例子,演示如何进行线性回归并绘制回归线:

RCopy Code
library(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 Code
library(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 中添加中文支持,并演示了一些基础的绘图技巧,包括散点图、线性回归和箱线图。通过学习这些基本的绘图技巧,可以为更复杂的数据分析和可视化打下基础。