【问题标题】:Replace X-axis with own values用自己的值替换 X 轴
【发布时间】:2011-07-08 02:57:02
【问题描述】:

我有一个关于命令 plot() 的问题。

有没有办法完全消除 x 轴并用自己的值替换它?我知道我可以通过这样做来摆脱轴

plot(x,y, xaxt = 'n')

然后添加一个轴与

axis(side = 1 etc.)

但是,当我添加轴时,显然它仍然指的是绘制为“x”的数据。 我只想绘制'y'值并添加我自己的x轴,只是“绘制”指定了自己的值的x轴。有什么办法吗?

这个问题的背景是我的两个数据框的长度不同,因此我无法绘制它们。

【问题讨论】:

标签: r plot axis-labels


【解决方案1】:

您可以在axis(...) 中设置labels = FALSE,然后使用text(...) 在单独的命令中打印标签。此选项可让您在需要时旋转文本。

lablist<-as.vector(c(1:10))
axis(1, at=seq(1, 10, by=1), labels = FALSE)
text(seq(1, 10, by=1), par("usr")[3] - 0.2, labels = lablist, srt = 45, pos = 1, xpd = TRUE)

详解here

【讨论】:

  • @WestCoastProjects 现在可以使用了。
【解决方案2】:

不确定是不是你的意思,但你可以这样做:

plot(1:10, xaxt = "n", xlab='Some Letters')
axis(1, at=1:10, labels=letters[1:10])

然后给你图表:

【讨论】:

  • 谢谢蒂姆!不完全是我想要的,但它帮助我做我想做的事=)
  • x 和 y 在这种情况下是相同的长度。当另一个轴的长度为m时,如何绘制n个标签?
  • 仅供参考:plot 命令中的xaxt="n" 选项禁止标记 x 轴。如果不包括此选项,axis 将是 NOOP。
  • 这可行,但我如何旋转它使其垂直? las=2 不起作用。
  • 我尝试了解决方案。 xaxt = "n" 选项适用于 ts 级时间序列。但是,在多个时间序列(mts-class)的情况下,它不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-04-13
  • 1970-01-01
  • 2020-07-14
  • 1970-01-01
  • 1970-01-01
  • 2021-04-02
  • 1970-01-01
相关资源
最近更新 更多