我有一个名为ft的频率表,如下所示:
ft <- table(scan("list_of_ints.txt"))
ft
1 2 3 4 5 6 7 8 9 10 11
621266 496647 436229 394595 353249 305882 253983 199455 147380 102872 67255
12 13 14 15 16 17 18 19 20 21 22
41934 24506 13778 7179 3646 1778 816 436 217 114 74
23 24 25
49 44 26
我试图用自定义轴x轴(1:25)和y轴(1:1000000)以10的幂增量绘制一个简单的折线图,其代码如下:
plot(ft, type="b", log="y", axes=FALSE, ylim=c(1,10^7), xlim=c(1:25),
axis(2, at=10^(0:6), labels=formatC(10^(0:6), format="f", digits=0),
cex.axis=0.8, las=2), axis(1, at=1:25, cex.axis=.6))
但我一直收到以下错误:
Error in xy.coords(x, y, xlabel, ylabel, log) :
'x' and 'y' lengths differ
当有25个数字和25个相应的频率值被绘制时,x和y长度如何不同?
我在这里遗漏了一些东西:/
答案 0 :(得分:1)
我认为人们假设您的括号不匹配,因为您在axis
命令中不恰当地调用了plot
。那些应该是对不同功能的调用。
plot(ft, type="b", log="y", axes=FALSE, ylim=c(1,10^7), xlim=c(1,25))
axis(2, at=10^(0:6), labels=formatC(10^(0:6), format="f", digits=0), cex.axis=0.8, las=2)
axis(1, at=1:25, cex.axis=.6)
我也收到有关xlim
的错误消息。 xlim
参数应该是具有两个值的向量,即低值和高值。我将其更改为xlim=c(1,25)