我有一个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因子
答案 0 :(得分: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)))
答案 1 :(得分:0)
与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)