Sto implementando una soluzione al problema del venditore ambulante (TSP) in R (Ricottura simulata) e voglio produrre periodicamente il percorso migliore corrente. Ho cercato un po 'come stampare i grafici durante un ciclo for
e fino ad ora sono falliti.Plottaggio durante un loop in RStudio
Uso RStudio e voglio vedere i grafici così come sono generati. Se hai mai visto i solutori di TSP fare le loro cose, capirai quanto è bello da guardare. Ecco un esempio dell'output grafico che voglio vedere http://www.staff.science.uu.nl/~beuke106/anneal/anneal.html
Non credo che l'utilizzo della memoria sarà un problema (durante circa 500.000 iterazioni, mi aspetto solo 50-100 grafici). Ecco una funzione di esempio, dove ci si aspetterebbe di vedere 10 appezzamenti diversi durante il tempo della funzione viene eseguito:
Plotz <- function(iter = 1000000, interval = 100000) {
x <- 1:10
for(i in 1:iter){
y <- runif(10)
if(i %% interval == 0) {
plot(x, y)
}
}
return(c(x, y))
}
Plotz()
Quando eseguo questo, tutto quello che vedo è la trama finale prodotta (in RStudio). Come posso vedere le trame mentre vengono generate?
Inoltre: Sono su Ubuntu (qualunque sia la versione stabile più recente). Non so se questo è rilevante.
Grazie a tutti in anticipo.
MODIFICA: Per suggerimento di Captain Murphy, ho provato a farlo nel terminale Linux e la grafica è apparsa. Continuo a pensare alla domanda "Come farlo in RStudio?" È ancora rilevante, tuttavia. È un buon programma, quindi forse qualcuno ha un'idea di cosa si potrebbe fare per farlo funzionare?
EDIT2: come affermato da Thilo, si tratta di un bug noto in Rstudio. Se qualcuno ha altre idee per risolvere questo problema senza il software stesso, allora c'è ancora qualcosa da discutere. Altrimenti, considera questa domanda risolta.
Provate il vostro codice nella console R standard (non in R studio). Le trame iterative sembrano apparire per me, non solo una alla fine. –
Non so se l'hai visto, ma ci sono delle frecce avanti e indietro nel pannello trama in RStudio che sono in realtà un ottimo modo per farti scorrere tra le trame generate (non le ho notate per un po ') . Ovviamente non si vedono le trame come vengono generate, ma in seguito è possibile scorrere le trame tutte le volte che si desidera. –
Non ho una risposta completa per te, ma forse qualche informazione: Sembra che questo sia (era?) Un bug in RStudio nel 2011. Vedi http://support.rstudio.org/help/discussions/suggestions/214- plot-should-update-in-real-time-osx – Thilo