2015-05-12 78 views
0

我需要打印一個單倍型網絡以高質量png。但是,爲了按照我想要的方式獲得情節,我需要使用交互功能來更改某些內容。當我使用png()打印情節時,我無法進行這些更改,因爲它會打印到PDF而不是打印到打印窗口。有什麼辦法可以將它打印到打印窗口以及png?以交互方式操作圖形時在R中打印高質量圖塊

的情節重複的例子:

install.packages("pegas") 
library(pegas) 
data(woodmouse) 
net <- haploNet(haplotype(woodmouse)) 
plot(net) 
o <- replot() # interactive 
## click to rearrange the network at will... 
## then do a different plot using the same coordinates: 
plot(net, bg = "red", labels = FALSE, show.mutation = 2) 
replot(o) # not interactive 

我不想因爲它產生的圖是低質量的使用出口按鈕RStudio。

回答

1

可以將當前的情節保存到使用recordPlot()一個變量,那麼圖形設備更改爲png和重播使用replayPlot保存的情節。例如:

#same data as above 
o <- plot(net, bg = "red", labels = FALSE, show.mutation = 2) 
replot() # interactive - do your thing 

myplot <- recordPlot() 
png("recordedPlot.png") 
replayPlot(myplot) 
dev.off()