完美解决R完中文无法显示或R语言中文乱码

Python019

完美解决R完中文无法显示或R语言中文乱码,第1张

由于R语言画图时对中文的支持,经常出现乱码,作图很难显示中文,尤其是ggplot2对中文支持不是特别友好,ggplot默认字体不支持显示中文,给许多使用的人带来不便,希望yihui大神能在Rstudio推动一下。

可以有一些变通的处理方法:

安装showtext包

install.packages("extrafont")

library(extrafont)

font_import()

ggplot

用Cairo包进行保存为png、pdf等格式

使用因子数据变相替换。

举个例子

用于指定文本大小的参数

cex:表示相对于默认大小缩放倍数的数值。默认大小为1,1.5表示放大为默认值的1.5倍。0.5表示做小为默认大小的0.5倍。

cex.axis:坐标轴刻度文字的缩放倍数。类似cex。

cex.lab:坐标轴标签(名称)的缩放倍数:

cex.main:标题的缩放倍数。

cex.sub:副标题的缩放倍数。

用于指定字体、字号、字样的参数

font:整数。用于指定绘图使用的字样。1 = 常规,2 = 粗体,3 = 斜体,4 = 粗斜体, 5 = 符号字体 (以adobe符号编码表示)

**font.axis:**坐标轴刻度文字的字体样式;

font.lab:坐标轴标签的字体样式;

font.main:标题的字体样式;

font.sub:副标题的字体样式;

**ps:**字体的磅值(1磅 = 1/72英寸)。文本的最终大小为平ps*cex;

family:绘制文本时候使用的字体簇。标准的取值为serif(衬线),sans(无衬线),mono(笔宽)

使用par()函数来改变之后绘图的参数。

当需要恢复默认参数par(opar)

names(pdfFonts())查看当前pdf可以使用的字体名称。

下面这三部,可以逐一试一下。

1、Rstudio相关设置要改成UTF-8。位置在:1、Tools → Global Options → Default text encoding ;2、File → Save with encoding

2、数据文本要更改为UTF-8编码,工具notepad++,操作:Encoding → Convert to UTF-8,保存,参考

3、读取数据是,在read.csv或其他读取函数中,添加读取文件编码的参数 fileEncoding = "UTF8