R options scipen 控制科学计数法的显示

当数字过长,R语言会自动采用科学计数法显示,测试如下

> a <- 100
> a
[1] 100
> a <- 200
> a <- 100
> a
[1] 100
> a <- 1000
> a
[1] 1000
> a <- 10000
> a
[1] 10000
> a <- 100000
> a
[1] 1e+05

可以看到,默认情况下,当超过了10万时,自动采用科学计数法。

在画图时,刻度线采用科学计数法标记并不美观,想要解决这个问题,可以设置options(scipen)

> options(scipen = 1)
> a <- 100000
> a
[1] 100000
> a <- 1000000
> a
[1] 1e+06

取值为1时,10万的数字依然用传统的显示方式,只有100万时,采用科学计数法

> options(scipen = 2)
> a <- 1000000
> a
[1] 1000000
> a <- 10000000
> a
[1] 1e+07

取值为2时,100万的数字依然用传统的显示方式,只有1000万时,采用科学计数法

从中可以发现规律,默认10万以上,采用科学计数法,scipen = 1 , 这个阈值就增加1位,变成100万,scipen = 2, 这个阈值增加2位,变成1000万。

所以为了让所有的数字都采用传统的数字表示,可以将scipen的数字设置的足够大,比如 scipen = 9。

看下实际效果

plot(sample(10000:100000, 100))

生成的图片如下

默认情况下,采用了科学计数法

修改scipen的值

> options(scipen = 9)
> plot(sample(10000:100000, 100))

生成的图片如下

 y轴的数字依然采用传统的显示方式。

原文地址:https://www.cnblogs.com/xudongliang/p/9480249.html