以对数刻度显示实际单位
Showing actual units on a logarithmic scale
我有一些高分辨率时间尺度的数据,我正在使用对数 (log 10) 尺度绘制,但是我想显示沿 x 轴的实际时间单位,而不是 "log 10 (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)
我想使用我的数据沿 x 轴显示跟踪的实际时间,如图所示。有什么解决办法吗??
不使用 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))
我有一些高分辨率时间尺度的数据,我正在使用对数 (log 10) 尺度绘制,但是我想显示沿 x 轴的实际时间单位,而不是 "log 10 (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)
我想使用我的数据沿 x 轴显示跟踪的实际时间,如图所示。有什么解决办法吗??
不使用 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))