2014-06-11 7 views
1

그림에서 U 상자가있는 차트를 만들려고합니다 (맨 아래, 왼쪽 및 오른쪽이지만 맨 위의 아무 것도없는 선). 웬일인지, 나는 항상 완전한 박스로 끝나게된다. 샘플 코드 :U 그림 주위의 상자 R

x11() 
par(fig = c(.1,.9,.1,.9), plt = c(.1,.5,.1,.9), bty = "u") 
plot(c(1,2,3),c(1,2,3)) 
par(fig = c(.1,.9,.1,.9), plt = c(.5,.9,.1,.9), bty = "u", new =TRUE) 
plot(c(1,2,3),c(1,2,3)) 
box("figure", bty = "u") 

그림의 그림은 그림의 절반을 차지하고 상자는 전체 그림을 차지하지만 상자의 모든면은 4 개입니다.

어떤 아이디어가 있습니까?

설명을 위해 편집 : 미안하지만 명확하지 않은 경우 하나의 줄거리 주위에 상자를 두는 것에 대해 걱정하지 않아도됩니다. 결국에는 서로 옆에 두 개의 플롯이 생기고 둘 중 하나를 둘러싼 U 상자가 필요합니다. 예제 코드도 편집했습니다.

+0

[외모] (https://github.com/wch/r-source/blob/trunk/src/library/graphics/src/을 그릴 수 graphics.C# L3095) 그림/외부/내부에는 사용할 수 없습니다. 그 사실은 아마 문서화되어야한다고 생각합니다. – joran

+0

감사합니다. 그래, 그것이 어딘가에 기록되어 있다면 좋을 것이다. – WheresTheAnyKey

답변

2

불행히도 box() 명령에서 "plot"유형을 사용하는 경우 @horan이 언급 한대로 bty 매개 변수는 존중됩니다. 당신은, 그러나, 라인을 직접

par(fig = c(.1,.9,.1,.9), plt = c(.1,.5,.1,.9)) 
plot(c(1,2,3),c(1,2,3)) 
par(fig = c(.1,.9,.1,.9), plt = c(.5,.9,.1,.9), new=T) 
plot(c(1,2,3),c(1,2,3)) 
par(fig = c(0,1,0,1), plt = c(0,1,0,1)) 
lines(grconvertX(c(0,0,1,1), "nfc","user"), 
    grconvertY(c(1,0,0,1), "nfc","user"), 
    col="blue", lwd=4) 

enter image description here

+0

내가 명확하지 않으면 죄송합니다. 방금 내 질문을 업데이트했습니다. – WheresTheAnyKey

+0

줄거리가 아니라 그림 주위에 상자가 필요합니다. – WheresTheAnyKey

관련 문제