R 以对数刻度显示实际单位

R 以对数刻度显示实际单位,r,axis,logarithm,R,Axis,Logarithm,我有一些高分辨率时间刻度上的数据,我正在使用对数(log10)刻度绘制这些数据,但是我想显示x轴上的实际时间单位,而不是“log10(time)” 这是数据 time ft 0.01 229 0.02 231 0.03 232 0.04 234 0.05 236 0.06 238 0.07 239 0.08 239 0.09 239 0.1 239 0.11 240 0.12 241 0.13 243 0.14

我有一些高分辨率时间刻度上的数据,我正在使用对数(log10)刻度绘制这些数据,但是我想显示x轴上的实际时间单位,而不是“log10(time)”

这是数据

time    ft
0.01    229
0.02    231
0.03    232
0.04    234
0.05    236
0.06    238
0.07    239
0.08    239
0.09    239
0.1     239
0.11    240
0.12    241
0.13    243
0.14    245
0.15    247
0.16    249
0.17    251
0.18    253
0.19    254
0.2     256
0.21    258
0.22    260
0.23    261
0.24    262
0.25    263
0.26    263
0.27    263
0.28    263
0.29    265
0.3     265
0.4     274
0.5     280
0.6     286
0.7     292
0.8     298
0.9     305
1       312
1.1     316
1.2     320
1.3     323
1.4     327
1.5     331
1.6     336
1.7     341
1.8     344
1.9     347
2       350
2.1     353
2.2     356
2.3     360
2.4     363
2.5     366
2.6     368
2.7     371
2.8     374
2.9     378
3       381
4       400
5       415
6       429
7       442
8       455
9       467
10      479
11      491
12      504
13      516
14      528
15      539
16      550
17      561
18      572
19      581
20      590
21      600
22      608
23      616
24      623
25      629
26      635
27      640
28      646
29      653
30      656
40      679
50      704
60      734
70      768
80      802
90      834
100     863
110     886
120     905
130     918
140     927
150     933
160     939
170     944
180     948
190     951
200     953
210     956
220     959
230     962
240     964
250     966
260     967
270     967
280     967
290     968
300     968
400     970
500     970
600     971
700     971
800     971
900     971
1000    970
这是我想要的样子

这是我的密码

ojip<-ojip
attach(ojip)
logt<-log10(ojip$time)
plot(logt,ojip$ft,xlab="Time (ms)",ylab="Fluorescence intensity",
     xaxt='n',yaxt='n',ylim=c(0,1300),cex.axis=0.8,cex.lab=0.8,
     pch=21,cex=0.8,font.lab=2,font.axis=2)
axis(side=2,at=seq(0,1200,200),cex.axis=0.7,font=2)

ojip不用logt变量,只需使用
plot
的内置功能来绘制对数图即可

plot(ojip, xlab="Time (ms)",ylab="Fluorescence intensity",
     xaxt='n',yaxt='n',ylim=c(0,1300),cex.axis=0.8,cex.lab=0.8,
     pch=21,cex=0.8,font.lab=2,font.axis=2, log="x")
axis(side=2,at=seq(0,1200,200),cex.axis=0.7,font=2)
axis(side=1,at=10^(-2:3),cex.axis=0.7,font=2, 
    labels=c(0.01, 0.1, 1, 10, 100, 1000))

完美。多谢各位