Непоследовательные результаты, сохраняющие png () и jpeg () в R - PullRequest
2 голосов
/ 16 ноября 2011

Я сохраняю некоторые сложные графики в программе R, которая включает в себя вызовы функций plot(), lines(), points() и abline() и пыталась использовать и png(), и jpeg(), но оба рендерингаочень противоречивые результаты.В одном запуске сетка будет сохранена в фоновом режиме, в следующем - нет.В одном прогоне очки будут добавлены в правильном lwd, в другом они будут огромными, или, возможно, не добавлены вообще.При следующем запуске строка будет добавлена, а затем исчезнет при повторном запуске.Я перебираю сотни итераций и получаю разные результаты практически при каждом запуске.

png(paste("/someFilePlace/pics/", propIn, ".png", sep = "")) 

plot(plotDat$yhat, col = "white", ylim = c(0,max(plotDat$yhat)*1.1),xaxt='n') 
fairlylightgray <- rgb(204/255, 204/255, 204/255, alpha=0.4) 
abline(v=(seq(0,1700,100)), col=fairlylightgray, lty="dotted") 
abline(h=(seq(0,10,0.5)), col=fairlylightgray, lty="dotted") 
points(plotDat$y, cex = '*', lwd = 3, col= "gray") 
lines(plotDat$yhat, col = "#08519C") 
axis(1, at = c(1,500,1000,1500), 
     labels = c(plotDat$dt[1],plotDat$dt[500],plotDat$dt[1000],plotDat$dt[1500])) 

dev.off()

1 Ответ

3 голосов
/ 16 ноября 2011

Поздравляю, я думаю, что вы, возможно, обнаружили неясную почти ошибку (по крайней мере, невозможность перехвата пользовательской ошибки).Попробуйте заменить cex="*" чем-то разумным в вашем коде (это должно быть число - или, может быть, вы имели в виду pch="*").

Я могу получить разные результаты в разных PNG следующим образом (если я строю график)в окне X11 при изменении размера окна могут происходить забавные вещи.

for (i in 1:10) { 
    png(paste("tmp",i,"png", sep="."))
    plot(1:10,1:10,cex="*"); 
    dev.off() 
}
...