R绘图错误

时间:2014-06-12 14:49:26

标签: r plot

我有一个名为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长度如何不同?

我在这里遗漏了一些东西:/

1 个答案:

答案 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)