1

我正在创建箱线图,如下所示:

data<-read.table("roughness_elevation.txt",header=T,na.strings="Na")
attach(data)

xle<-expression(Elevation~(m))
xlr<-expression(Roughness)

cvalue2<-cut(value2,breaks=c(1000,1100,1200,1300,1400,1500,1600))

png("G:/Users/.../Desktop/MSC/figures/bproughness.png")
plot(value1~cvalue2,xlab=xle,ylab=xlr,main="",outline=FALSE)
dev.off()

现在(海拔在 1000 到 2000 之间并且浮动),R 总是在我的 x-label 上写科学数字。我该如何改变呢?

我用 scipen=999 和 formatC(..) 进行了尝试,但没有一个成功(例如 formatC 抛出错误,因为 cvalue2 是一个因素)。

谢谢你的帮助!

编辑:

这是第一行,大约有 300 万行:

value1  value2
0.6222  1150.0098
0.6400  1149.3142
0.6364  1148.9984
0.6417  1149.0300
0.6385  1149.6849
0.6475  1150.3357
0.6554  1150.4762
0.6474  1150.4563
4

1 回答 1

3

将 dig.lab=4 添加到您的 cut() 函数中:

cvalue2<-cut(value2,breaks=c(1000,1100,1200,1300,1400,1500,1600), dig.lab=4)

默认值为 3,因此 cut() 使用科学记数法来格式化范围。或者,您可以在每个组的中点指定标签:

cvalue2<-cut(value2, breaks=c(1000,1100,1200,1300,1400,1500,1600), 
labels=seq(1050, 1550, by=100))
于 2012-11-14T19:35:09.810 回答