2017-01-23 6 views
4

В R участка под (перспективе увидеть), я хочу, чтобы мои вертикальная зеленаяabline() точно прикрепляются к нижнем правом углу моего участка; то есть: где именно красный и синий кривые линии конец в нижнем правом углу моего участка.определения точного нижний правый угол R участка

Сохранение всего, что есть на моем участке, Что такое x этого пункта? par("usr")[2] не может помочь, как видно в мой код ниже:

curve(df(x,1,28,ncp = 1.875),0,11,col="blue",lwd=3,ylim=c(0,1),xpd=T,bty="n",axes=F) 
curve(df(x,1,28), add=T,col="red",lwd=2) 
axis(1,pos=0) 
axis(2,pos=0) 

abline(v=par("usr")[2],col="green") ## I'm using par("usr")[2] here with no success ## 
+0

Не так хорошо, как ниже, но вы также можете получить максимальное значение кривой при ее построении и использовать t его вычислить конечную точку - crv <- curve (df (x, 1,28), add = T, col = "red", lwd = 2); abline (v = max (crv $ x), col = "red") ' – thelatemail

ответ

3

по умолчанию сюжет добавляет 4% дополнительного пространства на каждой стороне. Таким образом, вы можете вычислить

size = (par("usr")[2]-par("usr")[1])/1.08 
size 
11 

, чтобы получить размер основного сюжета и

par("usr")[2]- 0.04*size 
11 

получить правому краю

BTW вы можете иметь R не добавить, что пространство путем добавления xaxs="i" к вашему первому описанию кривой

+0

Странно, что на самом деле нет возможности просто получить эту точку в пространстве, учитывая огромное количество переменных в' par() '. Хороший ответ в любом случае. :-) – thelatemail