2013-05-06 53 views
0

我想將圖的圖像保存爲png文件;但是它切斷了軸標籤。所以我試圖通過設置「omi」和「mar」來留下更大的餘地,但似乎並不奏效。添加更多像素也不起作用。 cex.lab的值越小,軸的可見性就越小,但不可小覷。R:omi和mar返回xlim-errors

可能的錯誤是愚蠢的,但我不出來...

png(filename = "CarTheftForeigners.png", 
width = 1120, height = 646, units = "px", pointsize = 12, 
bg = "white", res = NA, family = "", restoreConsole = TRUE, 
type = c("windows", "cairo", "cairo-png") 
) 
plot(Table$Car.Theft,Table$Foreigners, 
type="p", pch=20, col="red", 
main="Correlation of the Rate of Car Theft and Rate of Foreigners", cex.main=2, 
xlab="Rate of Car Thefts", 
ylab="Rate of Foreigners", cex.lab=2, 
par(omi=c(1,1,1,1)+0.1)) 
abline(reg=lm(Foreigners ~ Car.Theft, data=Table),col="blue") 
dev.off() 

無論我怎樣添加值OMI或損壞,我總是得到錯誤:

Fehler in plot.window(...) : ungültiger 'xlim' Wert 

這是德語,意思是xlim-value無效。

謝謝你的幫助!

+1

有點神祕的錯誤信息的原因是'plot'試圖將來自par(omi = c(1,1,1,1)+0.1)的值與第一個不匹配的參數值在'plot.default'的參數列表中,在這種情況下是'xlim'。 – 2013-05-06 20:02:43

回答

1

您不能在plot內撥打電話par()。嘗試在plot之前撥打par電話。

這成功:

png(filename = "CarTheftForeigners.png", 
    width = 1120, height = 646, units = "px", pointsize = 12) 
    par(omi=c(1,1,1,1)+0.1) 
    plot(1:10, 1:10) 
dev.off() 

這不:

png(filename = "CarTheftForeigners.png", 
    width = 1120, height = 646, units = "px", pointsize = 12); 
plot(1:10, 1:10 , type="p", par(omi=c(1,1,1,1)+0.1)) 
# Error in plot.window(...) : invalid 'xlim' value 
dev.off() 

但是,你真的想用裏面的情節面值()調用,你可以有一個名爲值omi這將防止發生錯誤的位置匹配。

png(filename = "CarTheftForeigners.png", 
    width = 1120, height = 646, units = "px", pointsize = 12); 
    plot(1:10, 1:10 , type="p", omi = par(omi=c(1,1,1,1)+0.1)) 
dev.off() 
+0

所以你的意思是在'png(...)'之後,我把'par(omi = c(1,1,1,1)+0.1)'和'plot'? – PikkuKatja 2013-05-06 20:03:46

+1

沒錯。將明確。 – 2013-05-06 20:05:54

+0

哈哈,你太棒了!現在外邊緣是完美的!謝謝! – PikkuKatja 2013-05-06 20:17:23