我正在尝试将图绘制为间断线。但是令我惊讶的是,函数lty=2
中的选项plot()
不起作用:
plot(1:10,lty=2)
有人能帮我吗?
最佳答案
为什么会这样?您在画点。 lty
仅影响线条的绘制。例如,它确实可以工作。
plot(1:10, type = "b", lty = 2)
这使
我在这里选择
type = "b"
来说明区别;它意味着线和点。注意lty
如何影响线部分,而不影响点本身。如果您查看?plot.default
,您会看到 plot(x, y = NULL, type = "p", xlim = NULL, ylim = NULL,
log = "", main = NULL, sub = NULL, xlab = NULL, ylab = NULL,
ann = par("ann"), axes = TRUE, frame.plot = axes,
panel.first = NULL, panel.last = NULL, asp = NA, ...)
如果用户未指定,则默认为
type = "p"
(用于点)。这些点是使用字体字符或字形绘制的,而不是使用缠绕成圆圈的线绘制的。这些点的字符与绘图上的任何其他文本字符一样(例如,轴和刻度标签)。由于它们不是使用线条绘制的,因此
lty
不会影响它们。symbols()
是使用线绘制点的替代功能。例如plot(1:10, type = "n")
symbols(1:10, 1:10, circles = rep(0.1, 10), lty = 2, inches = FALSE, add = TRUE)
产生
您不需要单独的
plot()
调用,只需将对add = TRUE
的调用的symbols()
部分忽略掉,但是如果您这样做,与上面的plot()
获得的坐标轴限制相比,它在绘图上给出了不同的轴限制。symbols(1:10, 1:10, circles = rep(0.1, 10), lty = 2, inches = FALSE)
关于r - plot()中的选项lty不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20976881/