문제

이 질문은 이미 여기에 답이 있습니다.

이 명령이 함수 내부에서 수행 될 때 DotPlot을 PDF에 저장하는 데 어려움이 있습니다.

정상적으로 호출 할 때 잘 작동합니다.

df <- data.frame(a = runif(10), b = runif(10), c = runif(10), x = 1:10)  
pdf("test.pdf")  
dotplot(a + b + c ~ x, data = df, type = "l", auto.key=TRUE)  
dev.off()

그러나이 코드가 함수 내부에 있으면 작동하지 않으며 비어 있거나 빈 파일 만 만듭니다.

plotFunc <- function(model)  
{  
    pdf("test.pdf")  
    dotplot(a + b + c ~ x, data = model, type = "l", auto.key=TRUE)  
    dev.off()  
}
plotFunc(df)

그러나 파일 명령없이 함수를 호출하면 그래픽 창에 성공적으로 인쇄됩니다.

plotWinFunc <- function(model)  
{  
    dotplot(a + b + c ~ x, data = model, type = "l", auto.key=TRUE)  
}  
plotWinFunc(df)

이것은 파일에 출력해야 할 때 dotplot ()에 문제가 있다고 믿게 만듭니다. 그리고 파일 유형은 중요하지 않습니다. BMP와 PDF를 모두 시도했지만 어느 방법도 작동하지 않습니다.

파일에 도트 플롯을 성공적으로 작성하려면 어떻게해야합니까? 격자 패키지에서 특별 명령을 사용해야합니까, 아니면 어딘가에 오류가 있습니까?

도움을 주셔서 감사합니다.

도움이 되었습니까?

해결책

print ()에서 dotplot을 랩핑해야한다는 것을 깨달았습니다.

plotFunc <- function(model)    
{    
    pdf("test.pdf")    
    print(dotplot(a + b + c ~ x, data = model, type = "l", auto.key=TRUE))    
    dev.off()    
}  
plotFunc(df)

그것은 그것을 해결 한 것 같습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top