【问题标题】:Axes formatting in RR中的轴格式
【发布时间】:2016-04-25 19:24:31
【问题描述】:

我有一个 Y 轴格式为“number.10^10”的图。 Y 轴因此绘制像 1e+10、2e+10、3e+10.....10e+10 这样的值。我想将其打印为 1、2、3....10,我可以随时更改将其写在标签中,例如“以 10 ^ 10 的倍数”。我找不到解决方案。 例如

a=seq(1e+10,10e+10, by=1e+10)
b=seq(11e+10,20e+10, by=1e+10)
plot(a,b)

这是一个类似的情节,但我想删除那些 X10^10 因素

【问题讨论】:

  • 也许你想要这个:plot(a / (10^10), b / (10^10))

标签: r plot formatting label axes


【解决方案1】:

另一种选择是

plot(a,b, xaxt="n")
axis(1, at=a, labels=1:10)

您可以抑制原始轴(x​​ 与xaxt 或y 与yaxt,然后使用axis() 函数在您希望的任何位置添加您自己的标签

我们还可以使用sprintf 专门格式化标签。我们生成绘图并抑制 x 和 y 轴,然后我们根据您的数据添加轴,采用整数格式。

a=seq(1e+10,10e+10, by=1e+10)
b=seq(11e+10,20e+10, by=1e+10)

plot(a,b, xaxt="n", yaxt="n")

axis(1, at=a, labels=sprintf("%1.f", a/(1e+10)))
axis(2, at=b, labels=sprintf("%1.f", b/(1e+10)))

【讨论】:

  • @AyanMitra 我认为您错误地取消了选择此答案?
【解决方案2】:

类似于R - Print ggplot y axis values in 10 thousands这里的答案,我建议:

a=seq(1e+10,10e+10, by=1e+10)
b=seq(11e+10,20e+10, by=1e+10)
plot(a / 1e10, b / 1e10)

【讨论】:

  • 谢谢...这是最简单的方法,我更喜欢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-23
  • 2013-04-06
  • 2016-10-14
相关资源
最近更新 更多