我有以下数据集:
x = c(4, 5, 10, 30, 50, 51)
y = sqrt(x)
我想在5-50范围内绘制x范围内的数据
plot(x,y, xlim=c(5, 50))
abline(v=c(5,50), col="red")
但仍然可以看到来自该范围之外的数据点。
是否有一种简单的方法可以告诉plot()
字面上的限制。
到目前为止,我提出了两个想法:
答案 0 :(得分:1)
默认情况下,R会在尝试查找漂亮的标签符号(例如2,4,6
或5,10,15
等)之前略微扩展轴的范围(按4%)。您可以使用par
参数xaxs="i"
覆盖此值 - 代表internal
,您可以将其作为调用情节中的...
参数之一传递:
plot(x,y, xlim=c(5, 50) , xaxs = "i" )
可能有用的par
帮助页面中的一些信息:
<强> xaxs 强>
轴间距计算的样式用于x轴。可能的值为“r”,“i”,“e”,“s”,“d” 如果给定,样式通常由数据范围或xlim控制。
- 样式“r”(常规)首先将数据范围扩展4%,然后找到一个具有适合扩展范围的漂亮标签的轴。
- 样式“i”(内部)只是找到一个具有适合原始数据范围的漂亮标签的轴。