我正在绘制多个图,并且我希望基本图的域在-1和1之间不存在,因为那是受限图所在的位置:
x1 = seq(-1,0,0.01)
x2 = seq(0, 1, 0.01)
base = seq(-4, 4, 0.01)
y1 = function(x) {(1+x)^3}
y2 = function(x) {(1-x)^2}
plot(base, 0*base, xlab="x", ylab="y")
points(x1, y1(x1))
points(x2, y2(x2))
当前,有一条直线穿过x1和x2。我希望它仅在-4
和1
以及1
和4
之间运行。我试过两次绘制基准,但是由于限制,事情就不会出现在基准图中了。我可以对边缘使用xlim
或ylim
,但是此限制在-1
和1
之间,我不知道。
答案 0 :(得分:0)
一种方法是将base
的相关部分设为NA
,而这些点将不会被绘制。
这是问题中的数据和功能。
x1 <- seq(-1, 0, 0.01)
x2 <- seq(0, 1, 0.01)
base <- seq(-4, 4, 0.01)
y1 <- function(x) {(1 + x)^3}
y2 <- function(x) {(1 - x)^2}
现在使用函数is.na<-
使base
和-1
之间1
中的所有内容都等于NA
。
is.na(base) <- -1 <= base & base <= 1
并不变地运行图形命令。
plot(base, 0*base, xlab = "x", ylab = "y")
points(x1, y1(x1))
points(x2, y2(x2))