2012-11-14 116 views
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標籤上書面方式科學號碼。我該如何改變它?

我用scipen = 999和formatC(..)試過了,但沒有一個能解決問題(例如,因爲cvalue2是一個因素,formatC會引發錯誤)。

感謝您的幫助!

編輯:

這裏的第一行,有approximatly 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 
+0

歡迎來到SO。看起來您已閱讀發佈指南。一個想法雖然,爲了一個例子是可重複的數據集必須工作。您可以提供數據集的前n個行,組成一個類似的示例或使用R的內置數據集之一。這更有可能導致快速和高質量的響應。 –

回答

3

添加dig.lab = 4到你切()函數:

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)) 
+0

作品完美無瑕,非常感謝:) – Chris