阴影ggplot的区域,其中x,y满足约束

hal*_*ass 1 r ggplot2

我想生成一个ggplot其中X和Y满足以下约束的整个区域被着色:

(XY)/(X + Y-1)> 2

做这个的最好方式是什么?

eip*_*i10 5

好吧,我不认为我可以绘制整个区域,但是如何:不等式相当于y > 2*(x-1)/(x-2),所以让我们找到每个x的临界y值,然后绘制满足不等式的区域:

library(ggplot2)

x = seq(-10,14,0.001)
y = 2*(x-1)/(x-2)
dat = data.frame(x,y)

ggplot(dat) +
  geom_ribbon(aes(x, ymin=y, ymax=ifelse(x>2, Inf,-Inf)), fill="blue") +
  theme_bw() +
  coord_cartesian(ylim=range(-10,14), xlim=c(-10,14),expand=FALSE) +
  labs(y="y") +
  geom_hline(yintercept=2, colour="red", size=0.5, alpha=0.5) 
Run Code Online (Sandbox Code Playgroud)

水平红线表示y接近的临界值(即2),因为x的绝对值变大.

在此输入图像描述