在R中,如何设置x轴的中断?

时间:2014-09-23 14:11:44

标签: r plot

说这是我的代码:

plot(data ylab="x", xlab="y", xlim=c(1, 13))

但是情节的x轴如下所示: enter image description here

如你所见,x轴从2到12由2表示。但是,我希望它从1到13逐步显示,我怎么能意识到?

2 个答案:

答案 0 :(得分:8)

您已经定义了轴的限制;但是,R正在插入"默认"它的价值。

要改变它们,你需要

  1. "覆盖"使用xaxt='n'
  2. 创建轴
  3. 定义自定义轴
  4. 所以,让我们完成它!

    plot(data, ylab="x", xlab="y", xlim=c(1, 13), xaxt='n')
    # Now, define a custom axis
    axis(side = 1, at=1:13)
    

    这会给你你想要的东西。


    从文档中axis()

      

    <强>描述

      将轴添加到当前绘图,允许指定边,位置,标签和其他选项。

      的用法

       axis(side, at = NULL, labels = TRUE, tick = TRUE, line = NA, pos = NA, outer = FALSE, font = NA, lty = "solid", lwd = 1, lwd.ticks = lwd, col = NULL, col.ticks = NULL, hadj = NA, padj = NA, ...)

    一些最常用的论点是:

    • side(整数)1 =低于,2 =左,3 =高于,4 =右。
    • at(矢量)刻度线的位置
    • 刻度线的
    • labels(向量)标签。向量必须与at的大小相同。如果省略,将使用at的值。 FALSE隐藏任何标签

    有用的参考:

答案 1 :(得分:0)

看一下这段代码:http://cran.r-project.org/doc/contrib/Lemon-kickstart/axbreak.R

您必须获取该文件才能使用该功能:

source('http://cran.r-project.org/doc/contrib/Lemon-kickstart/axbreak.R')
axis.break(axis=1,breakpos,bgcol="white",breakcol="black", style=c("slash","zigzag"),brw=0.02)

适应你的喜好。