强制x轴和y轴在R中的(0,0)处相遇

时间:2013-10-19 18:03:59

标签: r graphics

在数据点周围设置绘图区域是合理的,并且不要求两者在原点相遇,但有时候确实需要这样。

我正在尝试使用网格包实现这一目标,但却没有得到我想要的内容:

require(grid)
grid.newpage()
pushViewport(plotViewport(c(5, 5, 5 ,5)))
pushViewport(dataViewport(1:10, 1:10))
grid.points(1:10, 1:10, default.units='native')
grid.xaxis(at=0:10)
grid.yaxis(at=0:10)

enter image description here

如何在网格系统和传统的R图形系统中完成这项工作?

1 个答案:

答案 0 :(得分:1)

我认为您的问题来自dataViewport

中的扩展参数
require(grid)
grid.newpage()
pushViewport(plotViewport(c(5, 5, 5 ,5)))
pushViewport(dataViewport(0:10, 0:10, extension=c(0,0)))
grid.points(1:10, 1:10, default.units='native')
grid.xaxis(at=0:10)
grid.yaxis(at=0:10)

在基础图形中,

plot(1:10, 1:10, xaxs="i", yaxs="i", xlim=c(0,10), ylim=c(0,10))