Windows与MacOS环境下RStudio运行相同R代码差异化报错问题咨询
Windows环境R运行异常原因分析
所有报错的核心原因是Windows与macOS默认文本编码差异导致的数据集读取异常,而非R或RStudio版本兼容问题:
- 前两类
Error in plot.window(...) : need finite 'xlim'/'ylim'报错:
中文环境Windows系统默认文本编码为GBK,macOS默认编码为UTF-8,如果stdata数据集是从UTF-8编码的文本文件(如CSV、TXT)导出,在Windows端未指定编码读取时,分类字段stdata$region会被识别为乱码、空值或无效值。plot函数调用分类变量作为坐标轴参数时,无法从无效值中计算出合法的坐标轴范围,因此抛出有限值要求的报错。macOS因为编码匹配可以正常识别region字段为分类变量,所以运行无错。 - 第三类
Error in plot.xy(xy, type, ...) : invalid color name 'ESC'报错:
编码不兼容会导致Windows读取的stdata$region字段值被插入系统层面的转义控制字符ESC,R的颜色映射机制尝试将带转义字符的乱码字符串识别为颜色名时匹配失败,因此抛出无效颜色名的报错。
可在Windows端运行str(stdata)、head(stdata$region)验证字段异常情况,读取数据时指定encoding = "UTF-8"即可解决该类问题。
内容的提问来源于stack exchange,提问作者Harry J Foxwell
相关产品推荐
相关产品推荐

